Fragment的引入

fragment是一种控制器对象,activity可以让其完成一些任务,通常是用来管理用户界面。被管理的界面可以占屏幕的一部分也可以是整个屏幕。

管理用户界面的fragment也可以叫做UI fragment它也有自己产生于布局文件的视图。fragment视图包含了用户可以交互的可视化UI元素。为什么要使用fragment呢,因为它支持更动态更灵活的界面设计,在平板上的应用都是fragment的优势,activity的layout分成fragment可以表示成

activity与fragment的关系

一个或者多个fragment都可以嵌入activity中,也就是说,多个fragment们组合到一个activity中,多个activity中也可重用一个fragment,它相当于模块化的一段activity。

和Activity一样,fragment也拥有自己的生命周期,接受自己的事件:

fragment的生命周期(*图片来自网络)


fragment类中也提供了一系列的回调方法,以覆盖生命周期的每个环节:

1.onAttach()和活动建立关联的时候调用

2.onCreateView()创建视图(加载布局)时调用。

3.onActivityCreated()确保与之相关联的活动一定已经创建完毕的时候调用

4.onDestroyView()当与之关联的视图被移除时调用。

5.onDetach()当和活动解除关联的时候调用。

那如何管理fragment:查找fragment可以通过findfragmentById()或者findfragmentByTag()

fragment的后退:fragment Stack,popBackStack() ,addOnBackStackChangedListerner()

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容