我正在尝试检测我的 Android 手机上的物理菜单按钮何时被按下。我虽然下面的代码可以工作,但它没有。请问我哪里错了?
返回的错误是'Illegal modifier for parameter onKeyDown;只允许final'
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {
// Do Stuff
} else {
return super.onKeyDown(keyCode, event);
}
}
最佳答案
我会使用 onKeyUp
寻找 up 键事件,而不是 down 事件。
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {
// ........
return true;
}
return super.onKeyUp(keyCode, event);
}
我们返回 true
因为我们正在处理事件;如果您希望系统也处理该事件,则返回 false
。
您也可以在 Activity
实例中完成所有这些操作,因为 Activity
是 KeyEvent
的已知间接子类。
关于android - 在Android中检测物理菜单按键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4239880/