机器人屏幕导航
问题描述:
我有3个屏幕(个XML):机器人屏幕导航
- 屏幕1个是主菜单,
- 屏幕2是主游戏和
- 屏幕3是在屏幕或游戏结束时显示游戏,屏幕3的背景在屏幕2上方变得透明。
所有这些导航都在创建新的活动(视图)并使用意图进入下一个屏幕。
问题1:如果我不断创造新的活动,只要用户去屏幕1到屏幕2和完成游戏和屏幕3将不得不选择新的游戏,这将创建屏幕2的新的活动,在这种情况下,堆栈会更多,并且要离开游戏用户,应该按更多数字(堆栈号)中的后退按钮。我想知道虽然游戏创建了多个活动,在栈只有3个屏幕应保留(或当用户单击后退按钮3次,游戏应该出来)
problem2:用户点击后退按钮时,模糊的屏幕3在画面2应到主屏幕(屏幕截图1),按当前阶段,顶部当我点击后退按钮它会屏蔽2(从模糊的画面3,这是没有意义对我来说)
感谢
答
问题1:为清单中的每个活动标记写android:launchMode="singleTop"
。这将避免创建多个实例到历史堆栈中,只会保留最新的条目。
问题2写android:noHistory="true"
在清单画面2活性标记,因此会有在历史堆栈和背部按下屏幕2没有条目上SCREEN3将显示屏幕1。也看看Intent.FLAG_ACTIVITY_NO_HISTORY