片段和父母活动生命周期在一起

我遵循以下四个主题:创建片段,处理片段生命周期,管理活动生命周期以及暂停和恢复活动。 所以我对此有点怀疑。 我的问题是

  • 如果A Activity呼叫乙Activity通过Intent但A不调用finish()方法那么A将在Pause状态,如果B是TransparentSemiTransparent ,并在Stop状态下,如果B是Opaque 。 我对吗?
  • 如果一个Activity包含Fragment F,则如果A将进入Pause状态,则F将进入Pause状态,并且如果A将处于Stop状态,那么F也将处于Stop状态。 我对吗?
  • 如果A呼叫B Activity并且B是Transparent则A将处于Pause状态并且F也会。 如果B调用finish()那么A将进入Resume状态,但F会发生什么? 它会从暂停中恢复吗? 如果是,那么如何以及什么步骤,因为我没有看到任何直接链接到Fragment生命周期中的直接链接,它将Activity的onPause() onResume()直接指向onResume()

    希望我能够问我想要什么。 对不起我的坏Englsh。


  • 如果B是SemiTransparent或部分可见,您不能确定只会在A上调用onPause,因为我了解它:

    已暂停

    另一项活动处于前景并具有重点,但这一项仍然可见。 也就是说,另一个活动在这个活动之上是可见的,并且该活动部分透明或不覆盖整个屏幕。 暂停的活动是完全活动的(活动对象保留在内存中,它维护所有状态和成员信息,并保持连接到窗口管理器),但可以在极低内存情况下由系统终止。

  • 你是对的:

    片段所在活动的生命周期直接影响片段的生命周期,以便活动的每个生命周期回调都会为每个片段生成类似的回调。 例如,当活动收到onPause()时,活动中的每个片段都会收到onPause()。

    然而,相反的情况并非如此,这意味着如果一个片段接收到onStop,那么不能保证Activity的onStop将被调用。

  • 我不太清楚你最后一句话的意思,或者你是如何测试过的。 根据Fragment文档:

    public void onResume()

    当片段对用户可见且正在积极运行时调用。 这通常与包含Activity的生命周期的Activity.onResume相关联

    它通常说因为它取决于片段如何被活动处理。


  • 如果一个活动通过Intent调用B Activity但A没有调用finish()方法,那么如果B是Transparent或SemiTransparent,则A将处于暂停状态,如果B不透明,则处于停止状态。 我对吗?

    是的

  • 如果一个活动包含片段F,则如果A将进入暂停状态,则F将进入暂停状态,并且如果A将处于停止状态,那么F也将处于停止状态。 我对吗?

    是,对的

  • 如果A呼叫B活动并且B是透明的,则A将处于暂停状态并且F也会。 如果B调用finish(),那么A将进入Resume状态,但F会发生什么? 它会从暂停中恢复吗? 如果是,那么如何以及什么步骤,因为我没有看到任何直接链接到Fragment生命周期中的直接链接,它将Activity的onPause()直接指向onResume()。

  • 你的理解是正确的,即使在这种情况下,片段也会像on一样从onPause移动到onResume状态。 但不幸的是,在开发人员android中没有太多文档。 这可能是因为他们想避免可能造成更多混淆的复杂图表。

    链接地址: http://www.djcxy.com/p/11263.html

    上一篇: Fragment and parent activity life cycle together

    下一篇: How to AngularJS Date from json