Android上的界面展示都是通过Activity实现的,Activity十分常用。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的界面放在平板上可能会有过分被拉长、控件间距过大等情况。这个时候更好的体验效果是在Activity中嵌入"小Activity",然后每个"小Activity"又可以拥有自己的布局的同时也可以拥有代码逻辑,从效果上看和activity一致。这就是fragment的本质。
fragment需要activity作为容器来承载。向activity添加fragment有两种方式,分别是静态添加和动态添加。静态添加的方式就是在布局文件中添加fragment,然后定义相关的fragment类。动态添加方式是在程序运行时向Activity添加Fragment,用这种方式程序的界面就可以定制的更加多样化。
动态添加分为四部:
- 1.获取到FragmentManager,在Activity中可以直接通过getFragmentManager得到。
- 2.开启一个事务,通过调用beginTransaction方法开启。
- 3.向容器内加入Fragment,一般使用replace方法实现,需要传入容器的id和Fragment的实例。
- 4.提交事务,调用commit方法提交。
ps:学习了这么久安卓,发现安卓系统中的很多组件都是成对出现的,比如fragment和fragment的布局文件,适配器适配的数据和适配的组件,activity和布局文件。安卓这个庞大的系统遵循着简洁一致的设计原则。
参考文献
https://blog.csdn.net/guolin_blog/article/details/8881711
2018-05-06
fragment我竟然忘光了,赶紧过来学习一波。写博客做笔记是多么的重要!