博客
关于我
Fragment和Activity的生命周期图
阅读量:557 次
发布时间:2019-03-07

本文共 1229 字,大约阅读时间需要 4 分钟。

Fragment作为Android中的重要组件,其生命周期管理至关重要。理解Fragment的生命周期可以帮助开发者更好地规划和管理Fragment的显示和状态。下面将详细介绍Fragment的各个生命周期方法及其作用。

Fragment的生命周期包括多个关键方法:

  • onInflate(Activity activity, AttributeSet attrs, Bundle savedInstanceState)

    在Activity.onCreate之前调用,可用于获取除了View之外的资源 Cheney.

  • onAttach(Activity activity)

    当Fragment第一次与Activity产生关联时会调用,此后不会再调用。

  • onCreate(Bundle savedInstanceState)

    在onAttach执行完后立即调用,通常用于读取保存的数据或初始化片段资源。此方法不会显示任何视图,因此若需要访问网络或获取数据,建议在新线程中操作。

  • onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)

    创建Fragment显示的视图。inflater用于加载布局文件,container是父标签对应的ViewGroup,savedInstanceState用于获取Fragment保留的状态数据。

  • onViewDestroyed(View view)

    在 criatedView 设置后会调用。此方法特别重要,可用于释放或回收相关资源。

  • onActivityCreated(Bundle savedInstanceState)

    在Activity.onCreate执行完成后立即调用,表示窗口已初始化,适合调用控件相关的逻辑。

  • ** onStart()**

    开始执行与视图相关的逻辑代码,如处理键盘点击事件。

  • ** onResume()**

    是Fragment从创建到最后显示的方法之一,适合执行延后处理或动态更新操作。

  • onPause()

    当Fragment即将从Activity切换到另一个Fragment或退出时触发,通常用于保存当前的状态或释放一些非持有资源。

  • ** onStop()**

    Fragment完全从屏幕上消失时调用,适合释放持有资源。

  • onDestroyView()

    当Fragment从Activity退回回退栈或被保存到状态时调用,用以释放与视图相关的资源。

  • onDestroy()

    当Fragment完全不再使用时触发,如按下返回键退出时调用,适合回收资源或释放长期保留的引用。

  • onDetach()

    Fragment完全脱离Activity关联触发,资源释放完毕。

  • 这些生命周期方法不仅帮助Fragment与Activity互动,还能有效管理片段的显示和状态,确保应用程序的运行流畅。

    转载地址:http://hijnz.baihongyu.com/

    你可能感兴趣的文章
    pandas :将时间戳转换为 datetime.date
    查看>>
    pandas :将行取消堆叠到新列中
    查看>>
    pandas DataFrame 中的自定义浮点格式
    查看>>
    Pandas Plots:周末的单独颜色,x 轴上漂亮的打印时间
    查看>>
    Pandas 对数据框的布尔比较
    查看>>
    Pandas 读取具有浮点值的 csv 文件会导致奇怪的舍入和小数位数
    查看>>
    pandas 适用,但仅适用于满足条件的行
    查看>>
    Pandas-通过对列和索引的值求和来合并两个数据框
    查看>>
    pandas.read_csv()的详解-ChatGPT4o作答
    查看>>
    PANDAS.READ_EXCEL()输出‘;溢出错误:日期值超出范围‘;而不存在日期列
    查看>>
    Pandas数据可视化怎么做?用实战案例告诉你!
    查看>>
    Pandas数据结构之DataFrame常见操作
    查看>>
    pandas整合多份csv文件
    查看>>
    pandas某一列转数组list
    查看>>
    Pandas模块,我觉得掌握这些就够用了!
    查看>>
    Pandas玩转文本处理!
    查看>>
    pandas的to_sql方法中使用if_exists=‘replace‘
    查看>>
    pandas读取parquet报错
    查看>>
    Pandas进阶大神!从0到100你只差这篇文章!
    查看>>
    spring5-介绍Spring框架
    查看>>