Android Fragment的生命周期(经典版)

Android Fragment的生命周期与宿主Activity紧密关联,但包含更多与视图相关的回调方法,主要分为以下阶段:

核心生命周期方法及作用

  1. 1. 关联阶段
    • • onAttach():Fragment与Activity建立关联,可获取Activity上下文及传递参数
    • • onCreate():初始化非UI数据(如数据库查询),此时视图未创建
  2. 2. 视图创建阶段
    • • onCreateView():加载布局文件并返回根视图(需避免直接操作UI组件)
    • • onViewCreated():视图初始化完成,可安全绑定控件和设置监听器
    • • onActivityCreated():宿主Activity的onCreate()已完成,可执行Activity与Fragment交互
  3. 3. 活跃阶段
    • • onStart():Fragment可见(与Activity同步)
    • • onResume():Fragment可交互(如启动动画或注册传感器)
  4. 4. 暂停/停止阶段
    • • onPause():失去焦点时调用(如弹窗出现),需停止耗时操作
    • • onStop():完全不可见时释放UI资源
  5. 5. 销毁阶段
    • • onDestroyView():视图被移除(Fragment实例仍存在),需清理视图绑定
    • • onDestroy():销毁非视图资源
    • • onDetach():与Activity解除关联,生命周期结束

生命周期特点

  • • 依赖Activity状态:若Activity暂停,其所有Fragment也会暂停;Activity销毁则Fragment随之销毁
  • • 新增回调:相比Activity多了onAttach()onDetach()等与视图管理相关的方法

典型场景示例

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {super.onViewCreated(view, savedInstanceState)val textView = view.findViewById<TextView>(R.id.text_view)textView.text = "视图初始化完成"  // 在此安全操作UI组件
}