一、Fragment 碎片
1.Fragment类似于html网页的fram,在Android中,相当于把一个Activity碎片化,分成好几个Fragment页面,每个Fragment页面有自己的View,逻辑,并且每个Fragment又包含在activity中。
二、Fragment的使用
1.继承Fragment类。(最好使用v4的包,因为v4包的能够向下兼容),在Activity的布局中加入Fragment标签,给标签加入name属性,属性的值等于Fragment类的全路径。
2.使用代码动态加入Fragment,需要用一个View来占据位置,一般选择FrameLayout。需要使用到
FragmentManager。
FragmentManager manager=getFragmentManager();
FragmentTransaction transaction=manager.beginTransaction();
//transaction.add(站位布局的id,Fragment类)
transaction.add(R.id.fragment,new Fragment()).commit();
二、Fragment的替换
调用replace方法,替换Fragment,写出在什么位置替换,替换的Fragment。
getFragmentManager().beginTransaction().replace(R.id.layout_contain,new ReplaceFragment()).commit();
addToBackStack(null);//加上这句话后,当你点击返回按钮后,还能够返回到上一个Fragment.
二、Fragment的移除
Fragment f1=new Fragment();
getFragmentManager().beginTransaction().remove(f1).commit();//移除fragment需要指定一个持有fragment对象的引用者。
二、Fragment的声明周期
内容来自雨知的博客
1. 当一个fragment被创建的时候,它会经历以下状态.
onAttach()
onCreate()
onCreateView()
onActivityCreated()
2. 当这个fragment对用户可见的时候,它会经历以下状态。
onStart()
onResume()
3. 当这个fragment进入“后台模式”的时候,它会经历以下状态。
onPause()
onStop()
4. 当这个fragment被销毁了(或者持有它的activity被销毁了),它会经历以下状态。
onPause()
onStop()
onDestroyView()
onDestroy()
onDetach()