当用户按下菜单按钮并出现选项菜单时,我希望我的游戏应用程序的do_physics()例程冻结。当菜单消失时,我可以解冻。我是通过在onPrepareOptionsMenu()中冻结来做到这一点的。这一切似乎都工作正常,直到我注意到可以通过触摸菜单按钮调用onPrepareOptionsMenu(),然后将手指从按钮滑到主显示屏上,使菜单永远不会出现。这使我的游戏冻结了。据推测,必须有一些替代的地方可以进行冻结,比如onReallyPuttingMenuUpNow()或其他一些。
我的测试是在Android 2.3.3的Nexus S上进行的。
答案 0 :(得分:0)
我不确定,但这可能有用 -
公共布尔值onMenuOpened(int featureId,菜单菜单) - >冻结它;
onoptionsmenuclosed or onbackpressed - >解冻它
答案 1 :(得分:0)
经过多次实验,onCreateOptionsMenu()似乎就是答案。