android developer tiny share-20160923

来源:互联网 发布:多点网络超市 编辑:程序博客网 时间:2024/05/29 07:36

今天讲fragment和Activity的生命周期的相互协调关系


与 Activity 生命周期协调一致
片段所在的 Activity 的生命周期会影响片段的生命周期,其表现为,Activity 的每次生命周期回调都会引发每个片段的类似回调。 例如,当 Activity 收到 onPause() 时,Activity 中的每个片段也会收到 onPause()。

不过,片段还有几个额外的生命周期回调,用于处理与 Activity 的唯一交互,以执行构建和销毁片段 UI 等操作。这些额外的回调方法是:

onAttach()
    在片段已与 Activity 关联时调用(Activity 传递到此方法内)。
onCreateView()
    调用它可创建与片段关联的视图层次结构。
onActivityCreated()
    在 Activity 的 onCreate() 方法已返回时调用。
onDestroyView()
    在删除与片段关联的视图层次结构时调用。
onDetach()
    在取消片段与 Activity 的关联时调用。

上节图 3 图示说明了受其宿主 Activity 影响的片段生命周期流。在该图中,您可以看到 Activity 的每个连续状态如何决定片段可以收到的回调方法。 例如,当 Activity 收到其 onCreate() 回调时,Activity 中的片段只会收到 onActivityCreated() 回调。

一旦 Activity 达到恢复状态,您就可以意向 Activity 添加片段和删除其中的片段。 因此,只有当 Activity 处于恢复状态时,片段的生命周期才能独立变化。

不过,当 Activity 离开恢复状态时,片段会在 Activity 的推动下再次经历其生命周期。

0 0