点击后退按钮然后恢复活动

时间:2011-01-17 20:25:50

标签: android android-activity back-button

我正在开发一款适用于Android的游戏,并且我认为这是一个非常常见的场景,但我无法弄清楚如何做到这一点。

我有一个标题屏幕,用户可以选择“新游戏”。当他们启动游戏时,我将GameActivity推入堆栈。然后,如果用户按下电话的物理后退按钮,应用程序将返回到TitleActivity,正如我想要的那样。但是,我需要一种允许用户在此时恢复游戏的方法,但我不知道如何回到GameActivity的htat实例。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:4)

你不能保证你会回到那个GameActivity的实例,你需要以某种方式保存游戏状态,并让你的GameActivity能够从那个已保存状态恢复。

确保您了解Activity lifecycle。您的活动实例可以在不可见时随时终止,因此您需要在适当的位置保存状态(onSaveInstanceState)。

答案 1 :(得分:1)

我要给出的答案是:不要这样做。

完成一项活动(当您按回时默认情况下会发生这种情况)完成该活动。你没有回到它。

如果您想允许用户按下以暂停游戏菜单,请使用onBackPressed()捕获后退键,而不是允许完成活动的默认行为,只需在适当的位置显示您的菜单那个活动。一般来说,我认为游戏使核心游戏UI成为一项活动,即为应用程序启动的基础活动比尝试将其分解为活动更有意义。游戏就这么特别。