android第一行代码学习笔记——fragment
程序员文章站
2022-03-09 19:24:44
...
1.fragment是一种可以嵌入在活动中当中的UI片段,可以合理地利用大屏幕的空间,类似于一个迷你的活动。
2.碎片的命名规范:模块名+Fragment
碎片的layout文件命名规则:fragment_功能名
3.直接添加添加碎片,可以在布局中当基本控件添加使用,在layout文件夹new一个资源文件,跟普通layout一样。接着新建一个XxxFragment类继承自Fragment类。建议使用supoort-v4库的。重写onCreatView()方法
public View onCreatView(LayoutInflate inflate,
ViewGroup container, Bundle savedIntanceState) {
View view = inflater.inflate(R.layout.碎片名,
container, false);
return view;
}
4.动态添加碎片,让活动实现View.OnClickListener接口,重写replaceFragment()方法
private void replaceFragment(Fragment fragment) {
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.replace(R.id."id", fragment);
transaction.commit();
}
5.在碎片中模拟返回栈:在transaction.commit();语句前添加transaction.addToBackStacj(null);语句
6.碎片和活动之间进行通信:调用FragmentManager的findFragmentById()方法在活动中获取碎片的实例,就可以调用碎片里的方法了。
在碎片中通过调用getActivity()方法得到要和当前碎片相关联的活动实例,然后就可以调用活动中的方法了。当碎片中需要使用Context对象时,也可以使用getActivity()方法。
//获取碎片的实例
XxxFragment xxxFragment = (XxxFragment) getSupportFragmentManager()
.findFragmentById(R.id.xxx_fragment);
//获取与碎片相关联活动的实例
XxxActivity activity = (XxxActivity) getActivity();
7.碎片的生命周期:
推荐阅读
-
Android学习笔记--使用剪切板在Activity中传值示例代码
-
Android学习笔记--通过Application传递数据代码示例
-
Android学习笔记--Activity中使用Intent传值示例代码
-
Android学习笔记(一)环境安装及第一个hello world
-
《第一行代码》读书笔记(六):CoordinatorLayout
-
两千行代码的PHP学习笔记汇总
-
温习Android基础知识——《第一行代码(第三版)》读书笔记 Chapter 14 高级技巧
-
荐 「「第一行代码(第二版)」」学习笔记 5 碎片(连载中)
-
《第一行代码》学习笔记:更强大的滚动控件——RecyclerView(增强版的 ListView)
-
《第一行代码》阅读笔记