Frgament初学习

来源:互联网 发布:mysql 建表时创建索引 编辑:程序博客网 时间:2024/05/22 23:34
Fragment 碎片
1.不能单独存在
2.Fragment必须被嵌入到Activity中使用,因此Fragment的生命周期是受其Activity宿主的生命周期所控制,一起暂停/停止
3.Fragment创建
1.xml 可以通过标签方式创建一个Fragment 静态关联
关联方式:
.name /class
1.创建一个Fragment类 extends Fragment 要引入v4包下面的Fragment 因为兼容性 ViewPager-->v4
onCreateView();
inflater.inflate(R.layout.fragment01_layout,null);
低版本:必须指定ID/TAG它才能找到
高版本不写也行

2.动态关联
Fragment02 fragment02 = new Fragment02();
//v4包-->getsupportFragmentManager(); 获取manager对象
FragmentManager manager =getsupportFragmentManager();
//事务对象 beginTransaction 控制Fragment
transaction= manager.beginTransaction();
//添加
transaction.add(R.id.contentt_relative,fragment02);
//提交
transaction.commit();

4.生命周期
create
onAttach();
onCreate();
onCreateView();
onActivityCreate();
start
onStart();
Resume
onResume();

静态的Fragment优先级高于动态
5.回退栈
默认没有栈的概念,
popBackStack() 从回退栈弹出 类似点击back按键,移除栈顶的Fragment
addOnBackStackChangeListener() 监听
getBackStackEntryCount();得到回退栈的数量
addToBackStack();
6.其他的Fragment
对话框 extends DialogFragment
List列表 ListFragment