美文网首页
Fragment生命周期

Fragment生命周期

作者: 卜卜Bruce | 来源:发表于2018-03-24 15:37 被阅读0次

Fragment的生命周期和拥有它的activity密切相关,它拥有一些和标准activity一样的生命周期,比如onResume(),还有一些方法和activity、UI生成有关。

fragment到resumed state的生命周期核心序列方法如下:

  1. onAttach(Activity) 当activity 和 fragment 关联在一起的时候会调用一次。
  2. onCreate(Bundle) 做fragment的初始创建工作。
  3. onCreateView(LayoutInflater, ViewGroup, Bundle) 创建并且返回fragment的view。
  4. onActivityCreated(Bundle) 告诉fragment,activity 已经完成了自己的Activity.onCreate()
  5. onViewStateRestored(Bundle) 告诉fragment ,view hierachy 的所有的saved state 被复原了。
  6. onStart() 使fragment 对用户可见(它的activity已经处于started)。
  7. onResume() 使fragment 可以和用户交互 (它的activity已经处于resumed)。

如果fragment 不再被使用,它会执行以下反序回调:

  1. onPause() fragment 不再能和用户交互,因为它的activity处于paused 或者 fragment的操作被修改。
  2. onStop() fragment 不再对用户可见,因为它的activity处于stopped 或者 fragment的操作被修改。
  3. onDestroyView() 允许fragment清除与View相关联的资源。
  4. onDestroy() 被调用用来做fragment state最后的清理工作。
  5. onDetach() 不再和activity关联之前被立即调用。
    调用循序如下图所示:
    fragment_lifecycle.png

注意:所有的回调都是在主线程中被调用的!

相关文章

网友评论

      本文标题:Fragment生命周期

      本文链接:https://www.haomeiwen.com/subject/ceuqcftx.html