Fragment 生命周期 (含分析)

Fragment生命周期图:

 

6743666-922761b10c560fb9.png

Fragment生命周期


Fragment与Activity生命周期对比图:

 

6743666-db84e5c99f823a1e.png

Fragment与Activity生命周期对比

 

生命周期分析

1. 当一个fragment被创建的时候,它会经历以下状态.

    onAttach()

    onCreate()

    onCreateView()

    onActivityCreated()

2. 当这个fragment对用户可见的时候,它会经历以下状态。

    onStart()

    onResume()

3. 当这个fragment进入“后台模式”的时候,它会经历以下状态。

    onPause()

    onStop()

4. 当这个fragment被销毁了(或者持有它的activity被销毁了),它会经历以下状态。

    onPause()

    onStop()

    onDestroyView()

    onDestroy() 

    onDetach()

5. 就像activitie一样,在以下的状态中,可以使用Bundle对象保存一个fragment的对象。

    onCreate()

    onCreateView()

    onActivityCreated()

6. fragments的大部分状态都和activitie很相似,但fragment有一些新的状态。

    onAttached() —— 当fragment被加入到activity时调用(在这个方法中可以获得所在的activity)。

    onCreateView() —— 当activity要得到fragment的layout时,调用此方法,fragment在其中创建自己的layout(界面)。

    onActivityCreated() —— 当activity的onCreated()方法返回后调用此方法

    onDestroyView() —— 当fragment中的视图被移除的时候,调用这个方法。

    onDetach() —— 当fragment和activity分离的时候,调用这个方法。

一旦activity进入resumed状态(也就是running状态),你就可以自由地添加和删除fragment了。因此,只有当activity在resumed状态时,fragment的生命周期才能独立的运转,其它时候是依赖于activity的生命周期变化的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值