【问题标题】:Android activity lifecycle state across different activities × 99416跨不同活动的Android活动生命周期状态×99416
【发布时间】:2011-09-21 13:01:39
【问题描述】:

我有四个活动 A、B、C 和 D。 我正在从活动 A---->B--->C--->D

我从活动 D 调用活动 B。

当我从 A-B-C-D 到达活动 D 时

Activity A、B 和 C 的状态是 onStop() 状态,Activity D 是 onResume() 状态。 前面有两种情况: 1>我按下后退按钮并转到活动 C 或 2>我调用一个事件并转到 Activity B。

第一个场景可以理解为活动状态。 D-Destroy 状态和 C 将是 onrestart-onstart-onresume

第二种情况

活动 D 转到 OnStop,而活动 B-->Oncreate-Onstart-OnResume... 并且活动 A 和 C 将处于 onStop() 状态...

我想知道 Activity B 在事件 onStop() 之前的状态, 但尽管调用了 onRestart() 方法,但它调用了 onCreate-onStart-onResume。

因为,Activity B 没有被破坏,而 Activity B 最初在哪里 onStop() state go ........当我移动到活动 C 时,从这个活动 B ......它调用活动 C 的 onCreate-onStart-onResume ......对于活动 C 也是那个onStop 状态没有被破坏......对生命周期和活动堆栈流感到困惑......帮助我解决同样的问题......

【问题讨论】:

    标签: android


    【解决方案1】:

    您正在创建活动的新实例,这就是您看到流程onCreate-onStart-onResume 的原因。在从堆栈开始之前,您需要将标志 FLAG_ACTIVITY_LAUNCHED_FROM_HISTORYFLAG_ACTIVITY_REORDER_TO_FRONT 添加到您的活动中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-15
      • 2013-01-13
      • 2011-12-18
      • 1970-01-01
      • 2014-09-26
      • 1970-01-01
      • 2014-05-18
      • 1970-01-01
      相关资源
      最近更新 更多