android-如何清除堆栈历史记录?

android-如何清除堆栈历史记录?,第1张

概述考虑有一个包含活动A,B,C的应用程序.A从启动器启动,B从A启动.B有一个按钮.我的要求是单击B上的按钮,应该清除活动堆栈A->B的当前历史记录,并且历史记录堆栈中必须仅包含C.可以这样做吗?如果是这样,请告诉我…提前致谢!解决方法:尽管很乏味,但是可以通过使用Activity方法startActi

考虑有一个包含活动A,B,C的应用程序. A从启动器启动,B从A启动.B有一个按钮.我的要求是单击B上的按钮,应该清除活动堆栈A-> B的当前历史记录,并且历史记录堆栈中必须仅包含C.可以这样做吗?如果是这样,请告诉我…

提前致谢 !

解决方法:

尽管很乏味,但是可以通过使用Activity方法startActivityForResult(),setResult(),finish()和onActivityResult()启动来完成.

用伪代码:

A: startActivityForResult(B)B: startActivityForResult(C)C: startActivity(D); setResult(CLEAR); finish()D: ...B: (onActivityResult) setResult(CLEAR); finish()A: (onActivityResult) finish()

如果您愿意对体系结构进行一些更“自然”的更改,请使用FLAG_ACTIVITY_CLEAR_top,这是从A,B,C到A的简单方法.

第三种方法是将A,B和C设置为使用noHistory,但是那样一来,您将失去从C返回B或A的能力.

总结

以上是内存溢出为你收集整理的android-如何清除堆栈历史记录?全部内容,希望文章能够帮你解决android-如何清除堆栈历史记录?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1071814.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存