1.为啥有Fragment
最初是用在平板上,这两个Fragment A 和B 就可以复用在平板和手机上。
带了生命周期的view,子activity
导航页,用fragment
2.简单使用,静态添加
继承Fragment,设置xml
在另外的xml布局中使用:
设置id,不设置会报错。
设置name,name就是我们上面的Fragment类
3.动态替换
把xml里面的frameLayout的内容替换为fragment的内容
都是事务型,所以需要commit
4.addToBackStack
添加了这句话,会加入回退栈。返回的时候依次弹出来显示。否则点击返回直接退出最后一个fragment,然后再点就退出activity了
5.Activity向Fragment传参数
6.生命周期:
onAttach():被添加到Activity中回调,只会被调用一次。
onCreate():创建Fragment时回调,只会被调用一次。获取activity传的参数。
onCreateView():每次创建,绘制该Fragment的View组件时回调,会将显示的View返回
onActivityCreate():当Fragment所在的Activity启动完成后回调。行该方法时,与Fragment绑定的Activity的onCreate方法已经执行完成并返回,在该方法内可以进行与Activity交互的UI操作,所以在该方法之前Activity的onCreate方法并未执行完成,如果提前进行交互操作,会引发空指针异常。
onStart():启动Fragment时回调。
onResume:恢复Fragment时回调,onStart()后一定调用onResume(),onStart可见,onResume交互
运行中...
onPause():暂停Fragment时被回调。
onStop():停止Fragment时被回调。
onDestoryView():销毁该Fragment所包含的View组件时调用
onDestory():销毁Fragment时调用
onDetach():将Fragment从Activity中删除/替换 完成后回调,onDestory后一定会调用onDetach回调, 只会调用一次。