2

我在这里看到了很多关于 android 堆栈的东西,但我就是无法让事情按照我想要的方式工作。在下图中,我对每个转换进行了编号。

应用导航流程图

过渡 8 很容易。我只是使用 Intent.FLAG_ACTIVITY_NO_HISTORY 开始关卡难度选择活动。然后,回击将跳过它并返回到关卡选择活动。

过渡 4 导致了一个问题,因为重新启动后在游戏中的回击最终出现在同一游戏的前一个实例中。我正在调用finish(),所以我不知道为什么它经常卡住,但是在开始游戏活动时使用Intent.FLAG_ACTIVITY_NO_HISTORY可以解决这个问题。但是,这会导致问题,因为转换 6 和 7 不起作用。从任务管理器或图标启动应用程序将始终从主菜单启动。

最大的问题是过渡 5。回家离开应用程序。没有办法捕获它,所以我可以弹出一个对话框询问用户是否真的想退出。所以,这意味着我需要获得转换 6 和 7 才能回到游戏活动。我不知道该怎么做。

我需要知道的是将哪些标志添加到各种意图中,以便转换 4 不会保持游戏活动的多个实例运行,而转换 6 和 7 最终会返回到游戏活动(假设那是他们按下主页按钮的地方)。

4

0 回答 0