我正在使用OpenGL制作游戏。如果我按下菜单按钮,游戏应暂停,然后打开选项菜单,但是当我按下菜单按钮时,游戏暂停,选项菜单只会暂时打开,然后自动关闭。这是我的代码:
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU) {//klo press tombol menu hrs dipause
SFEngine.newGame = false;
gameView.onPause();
openOptionsMenu();
}
return true;
}
导致我的菜单关闭的原因是什么?
更新:
public boolean onPrepareOptionsMenu(Menu menu){
gameView.onPause();
return true;
}
游戏开始时是否还调用了onPrepareOptionMenu?
答案 0 :(得分:0)
我怀疑Android可能会在某种内部onClick
回调中打开选项菜单,这与您的onKeyUp
一致。这导致两个openOptionsMenu
调用几乎同时执行,第二个调用关闭菜单。
也许最好让android Activity管理选项菜单而不是窃取按键?您可以暂停onPrepareOptionsMenu
中的gameView,在这种情况下,您无需窃取按键。