一、什么是Fragment
Fragment,意思是“碎片、片段”。
有两种android.app.Fragment和android.support.v4.Fragment。v4包里面的Fragment是为了兼容低版本的手机,通常开发最好是用v4包的。
Fragment的官方定义:
1、Fragment不能单独存在,必须依赖于Activity。
2、一个Activity可以有多个Fragment,一个Fragment也可以被多个Activity重用
3、Fragment有自己的生命周期,但是又依赖于Activity的生命周期,并且可以做Activity能做的事情,分担Activity的代码负担
4、Fragment可以通过xml静态加载,也可以通过代码动态加载(最好使用动态加载)
二、Fragment和Activity生命周期的关系
三、Fragment的基本用法
几个核心类:
1、Fragment:任何创建都要继承这个基类
2、FragmentManager:管理Fragment。
3、FragmentTransaction:对Fragment进行add(),remove(),replace(),show(),hide()等通过事务操作。实现类是BackStackRecord。
方法介绍:
add:添加Fragment
remove:删除Fragment
replace:替换Fragmen(replace会把之前创建好的Fragment全部清除掉)
show:显示Fragment
hide:隐藏Frament
小提示:对Fragment的优化,尽量不用replace,通过show和hide方法来替换要显示的Fragment,可以避免大量的创建和销毁Fragment。同时为了及时刷新,Fragment重写onHidenChange()方法。