真的需要一点建议.我有一个Activity在我的游戏中运行,当用户按下Back按钮时,它将使用onBackPressed()方法退回到主菜单,但我也会覆盖onUserLeaveHint()以执行相同的操作按下按钮或接到电话.但是,当按下"返回"按钮时也会调用此方法,这意味着主菜单意图被调用两次,其中一个在另一个上面.
如果有人知道如何解决这个问题或更好的处理这两个事件的方式,那将非常感激.
谢谢.
And*_*dyW 11
onUserLeaveHint() 是一个受保护的方法作为活动的其他生命周期方法,如果您正在处理onUserLeaveHint,这将处理以下情况
基本上它暗示用户试图离开你的活动.这意味着如果您正在处理onUserLeaveHint(),则无需处理onBackPressed()代码.
只是一个可能对您有帮助的想法,我将它用于我的“自制”ActionBar 来确定用户在退出之前何时实际到达主要(也是最后一个)活动。我手动启动主活动并通过设置标志清除整个活动堆栈FLAG_ACTIVITY_CLEAR_TOP,因此如果用户现在再次点击后退按钮,应用程序将关闭。
Intent intent = new Intent(getContext(), MainMenu.class).
setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15690 次 |
| 最近记录: |