Android关于onCreateOptionsMenu(Menu menu)和onKeyDown(int keyCode, KeyEvent event)的问题
在你的程序中,如果用onCreateOptionsMenu(Menu menu)这种方法得到菜单,且你还用了一下的方法来
处理Back键
@Overridepublic boolean onKeyDown( int keyCode, KeyEvent event) {
Intent intent = new Intent();
if (keyCode==KeyEvent.KEYCODE_BACK){
}
return true ;
}
那么会出现一种情况,就是按下菜单键无反应。
那是因为按下菜单键是属于onKeyDown(int keyCode, KeyEvent event)事件,当然就不会去执行这个函数onCreateOptionsMenu(Menu menu)啦
处理方法是:
将以上函数
@Override
publicbooleanonKeyDown( intkeyCode, KeyEvent event) {
Intent intent = newIntent();
if(keyCode==KeyEvent.KEYCODE_BACK){
}
return true;
}
改为
@Override
publicbooleanonKeyDown( intkeyCode, KeyEvent event) {
Intent intent = newIntent();
if(keyCode==KeyEvent.KEYCODE_BACK){
}
return super.onKeyDown(keyCode, event);
}
转载于:https://blog.51cto.com/beginnerjyh/1340680