【发布时间】:2019-11-11 06:34:59
【问题描述】:
我的问题是……我有 3 个活动:
(活动A)、(活动B)和(活动C)
从 ActivityA 到 ActivityB 我使用以下代码:
val intent = Intent(this, ActivityB::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY)
startActivity(intent)
finish()
从 ActivityB 到 ActivityC 我也用这个代码:
val intent = Intent(this, ActivityC::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY)
startActivity(intent)
finish()
但如果我给 onBackPressed 或转到任何其他应用程序并返回我的应用程序,而不是返回到 ActivityC,它会转到 ActivityA。
【问题讨论】:
-
顺便说一句,您可以将多个标志与
or位运算符组合在一起(又名intent.flags = Intent.FLAG_ACTIVITY_CLEAR_TOP or /* … */,而不是多次调用intent.addFlags)。请参阅stackoverflow.com/questions/45995425/… 了解更多信息。
标签: android android-intent android-activity kotlin