ИСПРАВЛЕНИЕ:
Некоторое время я использовал общий onKeyListener . Вскоре я обнаружил, что мой код вызывается дважды. Один раз с ключом вниз и один раз с ключом вверх. Теперь я использую следующий слушатель и вызываю код только один раз.
"if (event.getAction() == KeyEvent.ACTION_UP)"
является ключом.
OnKeyListener keyListener = new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_UP) {
//do something here
}
return false;
}
};
Я обнаружил, что onKeyUp()
вызывается автоматически для каждого элемента управления в Деятельности. Если это то, что вы хотите, добавьте его в действие так же, как вы добавляете onCreate()
Пример:
public boolean onKeyUp(int keyCode, KeyEvent event) {
//do something here
return false;
};
Я знаю, что это старый вопрос, но, возможно, это поможет другим с такой же проблемой.