Android之碎片Fragment的生命周期

Android之Fragment的生命周期

在继续上一篇文章,继续介绍Fragment生命周期

1、Activity的生命周期函数

2、Fragment常用函数介绍

3、Fragment常用函数完整调用过程

4、Fragment与Activity完整生命周期

Activity的生命周期函数

  1. onAttach

    绑定Activity, 此函数只有一个Activity 参数
    在此可执行 mActivity = activity操作, 持有activity 引用(可做一定的优化,防止内存泄露)
    
    1. onCreate
    	初始化Fragment, 带有一个 savedInstanceState参数,作用与Acttivity中一致
    
    1. onCreateView
    	初始化Fragment 布局, 可以做一些findViewByid操作
    	但不建议做耗时任务, 例如数据库操作等
    
    1. onActivityCreated
    	表示与Fragment绑定的Activity已经执行完onCreate 生命周期函数.
    	说明此后可以与Activity 进行交互, 但如果在此之前交互, 会发生空指针
    
    1. onStart
    	Fragment 由不可见进入可见状态
    
    1. onResume
    	Fragment 处于活动状态, 可见可交互
    
    1. onPause
    	暂停, Fragment可见但不可交互
    
    1. onStop
    	停止Fragment, Fragment 由可见进入不可见状态
    
    1. onDestroyView
    	销毁与Fragment相关的视图布局, 与Activity 仍然处于绑定状态, 可通过onCreateView进行重建
    
    1. onDestroy
    	销毁Fragment, 一般由内存回收或按Back 键出发调用
    
    1. onDetach
    	解除与Activity的绑定
    
    1. 贴一张官方生命周期函数图
      Android之碎片Fragment的生命周期_第1张图片

    2 . Fragment常用函数介绍

    2.1. setUserVisibleHint

    	Fragment 可见或不可见时调用,  可利用此函数做Fragment的懒加载
    

    2.2. onSaveInstanceState

    	保存当前Fragment状态, 与Activity中的此函数一致, 可存储EditText输入的文本
    

    2.3. onViewStateRestored

    	视图层次结构的所有保存状态都已恢复, 与Activity中的 onRestoreInstanceState 函数类似
    

    3. Fragment常用函数完整调用过程

    3.1 Fragment 创建过程

    setUserVisibleHint()->   
    onAttach()->  
    onCreate()->   
    onCreateView()->  
    onActivityCreated()->  
    onStart() ->  
    onResume()->
    
    

    3.2 Fragment变为不可见状态过程

    onPause()->
    onSaveInstanceState()->
    onStop()
    

    3.3 Fragment 部分可见(弹出Dialog 风格的Activity)时

       onPause()->onSaveInstanceState();
    

    3.4 退出应用

    	onPause()->onStop()->onDestroyView()->onDestroy()->onDetach()
    

4. Fragment与Activity完整生命周期

Android之碎片Fragment的生命周期_第2张图片

注意:

	在Fragment成对存在的生命周期函数与Activity 类似, 在此就不做介绍了, 
	可查看上一篇文章

Activity生命周期

你可能感兴趣的:(Android初级篇)