从历史堆栈中删除活动
我的应用程序在用户第一次运行应用程序时显示注册活动,如下所示:
所以当用户点击每个屏幕上的按钮时,这些活动按照该顺序相互启动。
当用户从活动#2转到#3时,是否有可能完全清除历史堆栈中的#1和#2? 我喜欢它,所以如果用户在#3,并点击后退按钮,他们只是进入主屏幕,而不是回到初始屏幕。
我想我可以用任务完成这个任务(即在#3开始一个新任务),但想看看是否有更简单的方法,
谢谢
您可以通过在AndroidManifest.xml
文件的相关<activity>
条目中将android:noHistory
属性设置为"true"
来实现此目的。 例如:
<activity
android:name=".AnyActivity"
android:noHistory="true" />
您可以使用转发来从活动堆栈中删除以前的活动,同时启动下一个活动。 在APIDemos中有一个这样的例子,但基本上你所做的只是在调用startActivity()
之后立即调用finish()
startActivity()
。
是的,看看Intent.FLAG_ACTIVITY_NO_HISTORY。
链接地址: http://www.djcxy.com/p/26207.html上一篇: Removing an activity from the history stack
下一篇: Advantages of using Bundle instead of direct Intent putExtra() in Android