Может быть, вы можете создать onKeyListener. Это выглядит примерно так:
private class myListKeyListener implements onKeyListener {
@Override
public boolean onKey(View arg0, int arg1, KeyEvent arg2) {
if (KeyEvent.ACTION_DOWN == arg2.getAction()) {
switch (arg1) {
case KeyEvent.KEYCODE_DPAD_UP: {
int i = list.getSelectedItemPosition();
if (i > 0)
i--;
list.setSelection(i);
break;}
}
то же самое для ВНИЗ, ВПРАВО, ВЛЕВО ... вы можете делать с ним все, что хотите
После этого присоедините слушателя к вашему списку в методе onCreate:
list.setOnKeyListner(new MyListKeyListener);
Надеюсь, это поможет вам;)