碎片

来源:互联网 发布:清华五道口考研知乎 编辑:程序博客网 时间:2024/05/01 20:32

碎片(Fragment)是一种可以嵌入在活动中的UI片段,可以让程序更合理的使用大屏幕。它具有自己的生命周期,但是其生命周期受宿主Activity生命周期的影响,能够接受自己的输入事件。可以在Activity运行时获取或者移除Fragment。有点像在Activity中操作“子Activity”。

  1. 如何创建Fragment?
    要想创建Fragment,必须创建Fragment的子类或者已有子类。
  2. 如何添加用户界面?
    想要为片段提供布局,必须实现onCreateView()回调方法,Android系统会在片段需要绘制其布局时调用此方法。
  3. 如何向Activity中添加片段?

    • 在Activity的布局文件中声明该片段
    • 通过编程方式将片段添加到现有的Activity中
  4. 在碎片中模拟返回栈
    在事务提交之前调用了 FragmentTransaction 的 addToBackStack()方法,它可以接收一个名字用于描述返回栈的状态,一般传入 null 即可。

  5. 碎片和活动之间进行通信
    • 在活动中获取碎片:getSupportFragmentManager().findFragmentById()
      或者getSupportFragmentManager().findFragmentByTag()
    • 在碎片中获取活动:getActivity()
  6. 碎片的生命周期
    碎片的生命周期

碎片和活动生命周期

第一次创建碎片:onAttach()——>onCreate()——>onCreateView()——>onActivityCreated()——>onStart()——>onResume()
返回:onPause()——>onStop()——>onDestroyView
再次启动:onCreateView()——>onActivityCreated()——>onStart()——>onResume()
退出:onPause()——>onStop()——>onDestroyView——>onDestoryView()——>onDestory()——>onDetach()

0 0
原创粉丝点击