机器人屏幕导航

问题描述:

我有3个屏幕(个XML):机器人屏幕导航

  1. 屏幕1个是主菜单,
  2. 屏幕2是主游戏和
  3. 屏幕3是在屏幕或游戏结束时显示游戏,屏幕3的背景在屏幕2上方变得透明。

所有这些导航都在创建新的活动(视图)并使用意图进入下一个屏幕。

问题1:如果我不断创造新的活动,只要用户去屏幕1到屏幕2和完成游戏和屏幕3将不得不选择新的游戏,这将创建屏幕2的新的活动,在这种情况下,堆栈会更多,并且要离开游戏用户,应该按更多数字(堆栈号)中的后退按钮。我想知道虽然游戏创建了多个活动,在栈只有3个屏幕应保留(或当用户单击后退按钮3次,游戏应该出来)

problem2:用户点击后退按钮时,模糊的屏幕3在画面2应到主屏幕(屏幕截图1),按当前阶段,顶部当我点击后退按钮它会屏蔽2(从模糊的画面3,这是没有意义对我来说)

感谢

问题1:为清单中的每个活动标记写android:launchMode="singleTop"。这将避免创建多个实例到历史堆栈中,只会保留最新的条目。

问题2android:noHistory="true"在清单画面2活性标记,因此会有在历史堆栈和背部按下屏幕2没有条目上SCREEN3将显示屏幕1。也看看Intent.FLAG_ACTIVITY_NO_HISTORY

什么你想要做的是将这些活动的启动模式设置为清单中的单个顶层。在您的清单集android:launchMode=singleTop中,您只需要一个实例。欲了解更多信息,结账this