最近有时间看看有关Fragment的一些介绍,自己做下笔记,记录下学习足迹。之前在Pad上使用QQ的时候就注意到Pad版本做的比较合理,由于pad屏幕比较大,左侧显示QQ联系人的列表,右侧可以显示具体的聊天窗口界面,觉得这样的设计不错,实现了多个fragment合并在一个单独的activity中,并建立多个UI。
fragment的行为和用法都和activity比较相似,它也有自己的生命周期,可以响应接收到的各种事件,值得注意的是一个fragment要总是放入到一个activity中,且activity的生命周期也会影响fragment
下面看一下fragment的生命周期官方文档给出的图:
使fragment能够呈现可见状态(能够与用户交互)的一些列核心生命周期方法有:
onAttach
当fragment和它的activity有关联的时候被调用
onCreate
整个系统创建fragment时调用,用来初始化fragment,相当于activity的onCreate
onCreateView
当第一次创建用户界面的回调方法,返回与fragment相关的视图
onActivityCreated
通知fragment它自己的activity已经完成
onViewStateRestored
告知fragment 其视图层次的所有保存的状态都已经恢复了
onStart
使fragment对用户可见(基于包含它的activity已经启动了)
onResume
使fragment与用户可进行交互(基于包含它的activity已经处于resume状态)
当一个fragment不再被使用的时候,它会经过一系列的反向回调方法:
onPause
fragment不再与用户进行交互,要么由于activity处于暂停态,要么由于在activity中一个fragment的操作正在被修改
onStop
fragment不再与用户可见,要么因为它的activity被停止,要么因为在activity中一个fragment的操作正在被修改
onDestroyView
允许fragment清理它的资源视图
onDestroy
被调用去做fragment状态的最终清理
onDetach
在fragment不再与其activity有关联之前立刻调用
在上述fragment的生命周期中,大多数程序都必须要去实现的是onCreate,onCreateview和onPause三个回调的方法
--------------------------------------------------------------------------------------------------------------------------------------------------------通常我们会继承系统内置的fragment的三个派生类:
DialogFragment
对话框式的Fragments。可以把fragmentdialog并入到到activity的返回栈中,使用户能再返回到这个对话框。
ListFragment
显示一个列表控件,就像ListActivity类,它提供了很多管理列表的方法,onListItemClick和setListAdapter等。
PreferenceFragment
显示一个Preference对象组成的列表,类似PreferenceActivity,主要用来创建设置界面。
分享到:
相关推荐
Android Fragment的使用。 功能:用一个Activity来管理两个Fragment,并且在其中一个Fragment中,点击按钮,影响到第二个Fragment。Activity中用list来管理Fragment。fragment布局采用垂直排列。
androidfragment学习笔记.pdf
android-fragment学习笔记.pdf
Android开发-FragmentTransaction-Fragment增加隐藏显示-完整Demo-AndroidStuidio http://blog.csdn.net/iwanghang
android Fragment学习 生命周期
博客《Android Fragment完全解析,关于碎片你所需知道的一切》所对应源码,博客地址:http://blog.csdn.net/harvic880925/article/details/38090845
测试了下fragment生命周期,之前一直看别人的文章知道生命周期,但是过后就忘了,现在实际操作了一遍fragment生命周期还是很有意义的,加深了印象解决了自己概念模糊不清的地方。
Android fragment生命周期一张图解,一张图完全解释fragment的生命周期.看一遍就会
androidx-fragment-1.1.0.aar
该Demo比较通俗易懂的讲解了Fragment的生命周期。大家可以查看我的博客,上面有更详细的关于Fragment生命周期的讲解。
android-support-fragment-26.0.0-alpha1.jar
Android Fragment切换动画
android_fragment学习笔记.pdf
Activity Fragment 生命周期研究
学习了菜鸟教程上的fragment的用法后(http://www.runoob.com/w3cnote/android-tutorial-fragment-demo2.html),下载代码发现总是报错,于是决定自己写一个简单的APP,顺便试试把原代码中显示文字换成显示图片。...
诚如其名,你可以把Fragment当作是Activity的模块化组件,它拥有自己的生命周期和UI,接受自身的处理事件,可以在Activity运行中被动态的添加、移除、替换。 Fragment必须被写成可重用的模块,你可以将多个Fragment...
android-lifecycle, Android Activity/fragment 生命周期的图表 完整的Android fragment & Activity 生命周期尝试了解各种各样的片段之后,我做了一些研究并将完整的Android Activity/fragment 生命周期结合起来。...
Android fragment切换动画
理解Fragment生命周期(字典) 有这个字典以后对照查就行了。
Android Activity和Fragment的生命周期测试代码,没事的时候可以玩玩。