onKeyDown () проблема с функциональностью

1

Я пытался переопределить функциональность кнопки "Назад", где я хотел вызвать функциональность по умолчанию, если логическое значение установлено false

public boolean onKeyDown(int keyCode, KeyEvent event) {
        boolean temp = false;
        if (event.KEYCODE_BACK == keyCode) {
            System.out.println("Back pressed");
            if (isTrue) {
                //Do something
                return true;
            }
            else return false;
        }
        return false;
    }

Теперь это точно не работает, как заявляет документация. часть //Do Something выполняется хорошо, но когда isTrue есть false, мне нужна функция возврата по умолчанию, которая не выполняется. Im с использованием SDK 1.5

Теперь,

  • Как это исправить?

  • Является ли эта проблема исправлена ​​в последующих обновлениях SDK? Если нет, может кто-то поднять ошибку для того же?

Теги:

1 ответ

3
Лучший ответ
  • Если вы хотите поведение по умолчанию, цепочка к суперклассу:

    return (super.onKeyDown(keyCode, event));

  • Ошибка в вашем коде. Кроме того, для Android 1.6 и новее вам лучше обслуживать переопределенный выделенный метод onBackPressed() (где, опять же, если вы хотите, чтобы поведение по умолчанию было цепочкой для суперкласса).

  • 0
    Кроме того, вы должны прочитать это: android-developers.blogspot.com/2009/12/…
  • 0
    Спасибо, comonsware. Я фактически следовал за документацией как есть, и это упомянуло, что возвращение ложного будет работать. Также спасибо (и Самуху) за то, что он указал на изменения для vr1.6, но согласно требованиям я должен придерживаться vr1.5 на данный момент.
Показать ещё 1 комментарий

Ещё вопросы

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