Android开发学习之Fragment解析


1.定义

Fragment中文解释是碎片的意思,主要用在大屏幕设备上,例如平板电脑上,支持更加动态和灵活的UI设计。Fragment在你的应用中相当于是一个模块化和可重用的组件,因为Fragment定义了它自己的布局,以及通过使用它自己的生命周期回调方法定义了它自己的行为,你可以将Fragment包含到多个Activity中。

2.特点

(1)Fragment可以作为Activity界面的一部分组成出现;

(2)可以在一个Activity中同时出现多个Fragment,并且一个Fragment也可以在多个Activity中使用;

(3)在Activity运行过程中,可以添加、移除或者替换Fragment;

(4)Fragment可以响应自己的输入事件,并且有自己的生命周期,它们的生命周期会受宿主Activity的生命周期影响。

3.生命周期

Fragment必须是依存于Activity而存在的,因此Activity的生命周期会直接影响到Fragment的生命周期。

  生命周期中涉及的方法如上图所示,具体触发条件如下所述。
  • onAttach()
    • 当Fragment被添加到Activity时候会回调这个方法,并且只调用一次;
  • onCreate()
    • 创建Fragment时会回调,只会调用一次;
  • onActivityCreated()
    • 当Fragment所在的Activity启动完成后调用;
  • onCreateView()
    • 每次创建都会去绘制Fragment的View组件时回调该方法;
  • onStart()
    • 启动Fragment
  • onResume()
    • 恢复Fragment时会被回调,调用onStart()方法后面一定会调用onResume()方法;
  • onStop()
    • 停止Fragment
  • onDestroyView()
    • 销毁Fragment所包含的View组件时调用
  • onDestroy()
    • 销毁Fragment时被回调
  • onDetach()
    • Fragment从Activity中删除时会回调该方法,并且这个方法只会调用一次

4.静态加载

     这是使用Fragment最简单的一种方式,把Fragment当成普通的控件,直接写在Activity的布局文件中,用布局文件调用Fragment。

    (1)新建Fragment,重写onCreateView决定Fragment布局

    @Override
    

相关内容