FLAG_ACTIVITY_CLEAR_TASK在开始新活动之前未先完成其他活动

时间:2020-07-15 02:40:34

标签: android

背景:

我有两个活动,我们称之为A(标准)和B(单任务)。

A将开始B并在内部完成。

在B中单击按钮时,B将以标志Intent.FLAG_ACTIVITY_NEW_TASK或Intent.FLAG_ACTIVITY_CLEAR_TASK开头A。

活动生命周期(B-> A)

  1. B(旧):onPause
  2. A:onCreate
  3. A:onPause
  4. B(新):onCreate
  5. B(新):onStart
  6. B(新):onResume
  7. A:onStop
  8. A:onDestory
  9. B(旧):onStop
  10. B(old):onDestroy

有没有办法使生命周期看起来像这样流动?

  1. B(旧):onPause
  2. B(旧):onStop
  3. B(old):onDestroy
  4. A:onCreate
  5. A:onPause
  6. B(新):onCreate
  7. B(新):onStart
  8. B(新):onResume
  9. A:onStop
  10. A:onDestory

文档中的FLAG_ACTIVITY_CLEAR_TASK描述:

如果在传递给{@link Context#startActivity Context.startActivity()}的Intent中进行设置,则此标志将导致在开始活动之前清除与该活动相关联的所有现有任务。也就是说,活动成为原本为空的任务的新根,并且所有旧活动都已完成。只能与{@link #FLAG_ACTIVITY_NEW_TASK}结合使用。

那么我会误解FLAG_ACTIVITY_CLEAR_TASK标志的含义吗?

0 个答案:

没有答案