1. 碎片是什么?


碎片(Fragment)是一种可以嵌入在活动中的UI片段,能让程序更加合理和充分利用大屏空间,因此在平板上应用广泛。
碎片包含布局,同样有自己的生命周期。

2. 碎片的使用方式


1. 简单用法

  • 创建布局文件
  • 创建继承自Fragment类的子类
  • 在子类中加载布局
  • 在活动的布局文件中引入fragment

    标签在布局中添加碎片,需要通过android:name属性来显式指明要添加的碎片类名,注意一定要将类的包名也加上。 android:name="com.example.fragmenttest.LeftFragment"

2. 动态添加碎片

  1. 创建待添加碎片实例
  2. 获取FragmentManager,在活动中通过调用getSupportFragmentManager()方法得到。
  3. 开启一个事务,通过beginTransaction()方法开启。
  4. 通过replace方法,向容器内添加或替换碎片,需要传入容器的id和待添加碎片的实例。
  5. 提交事务,通过commit方法来完成。

    3. 在碎片中模拟返回栈

    addToBackStack(null)

    4. 在碎片和活动之间进行通信

    getActivity
    findFragmentById

    3. 碎片的生命周期

  • 运行状态:碎片可见,并且所关联的活动处于运行状态时,该碎片也处于运行状态。
  • 暂停状态: 当一个活动进入暂停状态时,与他相关联的可见碎片就会进入暂停状态。
  • 停止状态:当一个活动进入停止状态时,与他相关联的碎片就会进入停止状态。
  • 销毁状态: 当活动销毁时,与他相关联的碎片就会进入销毁状态。

    碎片的生命周期与活动的生命周期息息相关。


4. 动态加载布局的技巧


手机平板要兼顾——探究碎片