не может обрабатывать события клавиатуры Android

1

Я пытаюсь обработать событие кнопки "Назад" в своем приложении, но он вообще не работает. Я включил ActivityGroup в мое приложение в соответствии со статьей Android: вкладки вложенных действий TabActivity

Я добавил следующий код в соответствии со многими сообщениями на этом веб-сайте.

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    Log.d(this.getClass().getName(), "back button pressed: " + keyCode);
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
        Log.d(this.getClass().getName(), "back button pressed");
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

но по какой-то причине я все еще не знаю, что я не получаю строки, которые будут регистрироваться, она возвращается на главный экран. Я знаю, что onBackPressed не будет работать для меня, потому что мне нужно, чтобы это приложение реализовано с использованием api level 4, и оно недоступно на этом уровне.

В моей группе ActivityGroup есть только два действия: один вид списка и представление сведений. Я поставил этот код на все три класса, чтобы попробовать что-то другое, но все же не могу заставить его работать. Я вижу "Нет клавиатуры для id 0" в журналах, но я не думаю, что это означает что-то, что может быть связано с проблемой.

Я действительно ценю любой ответ на этот вопрос. Большое спасибо Т

Теги:

1 ответ

0
Лучший ответ

Добавьте оператор журнала прямо над линией возврата и посмотрите, что происходит с KeyEvent.

вот так:

Log.w(keyCode, "This is the key code that is returned");
return super.onKeyDown(keyCode, event);

Теперь посмотрите на возвращаемое значение и проверьте/сравните его с KeyEvent.KEYCODE_BACK, и это может указывать на вашу проблему.

  • 0
    Я понял, что происходит. Я не знал, что этот метод должен быть реализован в классе, который реализует вкладку, а не на самом деле для каждого действия, открытого внутри содержимого вкладки. Нужно понять, почему, сделаем исследование позже. Спасибо за ответ.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню