我正在编写一个应用程序,我需要在其中禁用菜单按钮。现在按此按钮可以最小化并将我的应用程序发送到后台。
如果有人按下菜单按钮,我想在我的活动中触发一个事件。
我在Stack Overflow上尝试了以下链接
Detecting physical Menu key press in Android
Android: How to add listener to hardware menu button?
这些都不适合我。
以下是我的代码
@Override
public boolean onKeyDown(int keyCode, KeyEvent event){
if(keyCode == KeyEvent.KEYCODE_BACK)
{
Toast.makeText(getBaseContext(),"Please use the top navigation icons ...",Toast.LENGTH_SHORT).show();
}else if(keyCode == KeyEvent.KEYCODE_MENU)
{
Toast.makeText(getBaseContext(),"Please use the top navigation icons ...",Toast.LENGTH_SHORT).show();
}else
{
return super.onKeyDown(keyCode, event);
}
return true;
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {
// ........
return true;
}else
{
return super.onKeyUp(keyCode, event);
}
}
@Override
public boolean onPrepareOptionsMenu (Menu menu) {
if (true)
menu.getItem(1).setEnabled(false);
return false;
}