Fragment的交互及管理

一、向容器中静态添加Fragment

FragmentManager  API

  • FragmentManager用来管理Activity中的Fragment
  • findFragmentByld()通过id查找Activity中的Fragment
  • findFragmentByTag()通过字符串查找Activity中的Fragment
  • popBackStack()模拟用户的点击Back键的操作
  • addOnBackStackChangedListener()添加后台栈改变监听器

①用id

Fragment的交互及管理_第1张图片

Fragment的交互及管理_第2张图片

②用tag

 

二、向容器中动态添加Fragment

FragmentTransaction APl

  • add()向容器中添加一个Fragment
  • remove()删除一个Fragment
  • replace()将容器中的Fragment 替换成新的Fragment
  • hide()隐藏已存在的Fragment
  • show()显示此前隐藏的Fragment
  • addToBackStack()将事务添加到后台栈
  • commit()提交事务,将改变应用到Activit

添加:

Fragment的交互及管理_第3张图片

移除:

Fragment的交互及管理_第4张图片

隐藏:

Fragment的交互及管理_第5张图片

Fragment不可以带参构造,如果要设置相应的属性,可以用静态方法,初始化属性只在onCreate中进行的话,可以在静态方法中利用Buddle设置参数

Fragment的交互及管理_第6张图片

Fragment的交互及管理_第7张图片

Activity类里面使用静态方法产生对像,通过FragmentTransaction对象进行替换: 

Fragment的交互及管理_第8张图片

 

三、系统提供的Fragment

系统提供了几个其他的Fragment类开发者可以继承:

  • DialogFragment显示一个悬浮对话框。
  • ListFragment显示一个由adapter管理的项目列表。

DialogFragment:

Fragment的交互及管理_第9张图片

Fragment的交互及管理_第10张图片

ListFragment:

Fragment的交互及管理_第11张图片

Fragment的交互及管理_第12张图片

现在Fragment的生命周期:

Fragment的交互及管理_第13张图片

 

你可能感兴趣的:(Android,java,android)