我想在启动新的Activity意图时清除后退堆栈。
我的问题确切情况如下: 我有这样的活动A>B>C>D>E “ A”是一个注册活动,“ B”是一个确认注册活动。 我希望当用户开始活动“ B”时,他再也无法返回活动“ A”,同样,当用户到达活动“ C”时,活动“ A”和“ B”都将无用,我不需要用户返回到它们。
此外,当用户从“ C”活动移动到“ D”活动时,他可以返回到“ C”活动,但如果他进一步移动到“ E”活动,则无法返回到以前的“ C”或“ D”活动。
经过很多研究,我得到的最佳解决方案是使用标志:FLAG_ACTIVITY_NO_HISTORY,但对于我的情况,它有两个问题:
1.在活动“A”中,如果用户导航离开我的应用程序(例如到主屏幕),它将销毁该活动,因此用户输入的所有信息都会丢失!
2.活动“ C”我希望保留它在历史记录(后退堆栈)中,如果用户导航到“ D”活动,但当用户移动到“ E”活动时,我希望将其删除。
到目前为止,我找不到这个问题的解决方案!如果有一些东西可以清除当前任务的后退堆栈,那么它将更容易!
我的最小SDK支持是5。
提前致谢。
我的问题确切情况如下: 我有这样的活动A>B>C>D>E “ A”是一个注册活动,“ B”是一个确认注册活动。 我希望当用户开始活动“ B”时,他再也无法返回活动“ A”,同样,当用户到达活动“ C”时,活动“ A”和“ B”都将无用,我不需要用户返回到它们。
此外,当用户从“ C”活动移动到“ D”活动时,他可以返回到“ C”活动,但如果他进一步移动到“ E”活动,则无法返回到以前的“ C”或“ D”活动。
经过很多研究,我得到的最佳解决方案是使用标志:FLAG_ACTIVITY_NO_HISTORY,但对于我的情况,它有两个问题:
1.在活动“A”中,如果用户导航离开我的应用程序(例如到主屏幕),它将销毁该活动,因此用户输入的所有信息都会丢失!
2.活动“ C”我希望保留它在历史记录(后退堆栈)中,如果用户导航到“ D”活动,但当用户移动到“ E”活动时,我希望将其删除。
到目前为止,我找不到这个问题的解决方案!如果有一些东西可以清除当前任务的后退堆栈,那么它将更容易!
我的最小SDK支持是5。
提前致谢。