如何操作Android活动栈?

4
这是我提供的两种情况。
1- 用户第一次从Android主屏幕打开应用程序 用户会看到“第一次”屏幕(由第一次活动支持,我们称其为A) 用户点击返回按钮 用户将返回到Android主屏幕
2- 用户第二次打开应用程序 用户会看到应用程序的主列表屏幕(由列表活动支持,我们称其为B) 用户点击返回按钮 用户将返回到Android主屏幕
我已经知道许多检测是否第一次打开应用程序的方法。
问题在于返回按钮返回到主屏幕而不是一个路由活动,该活动决定转发到哪个屏幕。
目前,我的应用程序有一个活动来决定路由(我们称其为R),但问题是,我的堆栈要么是R-> A,要么是R-> B。
我希望A或B在打开时替换R,并且如果用户点击返回,则返回到Android主屏幕,而不是返回到R。
拥有为A和B设置视图的协作者也不太可行,因为B扩展了Android具体实现的列表活动以获取其大部分功能。
有什么想法吗?
1个回答

4
当A或B打开时,我希望它们能够替换堆栈上的R,如果用户点击返回,则会回到Android主屏幕,而不是返回R。
在R调用startActivity()后,调用finish()来触发A或B的打开。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接