生命周期
fragment的生命周期跟activity很像,这是因为fragment托管于activity,根据activity的生命周期会调用fragment的生命周期
其关键的区别在于,activity的生命周期由操作系统调用,而fragment的生命周期方法只由activity调用
onAttach(Context)
onCreate(Bundle)
onCreateView()
onActivityCreated(Bundle)
onStart()
onResume()
onPause()
onStop()
onDestroyView()
onDestroy()
onDetach()
使用方式
布局中添加fragment
好处是简单,缺点是不灵活,没法动态变换fragment。这恰恰是fragment存在的理由啊朋友代码中添加fragment
缺点是相对复杂,但是优点是灵活,可以随时添加,替换,删除fragment
用法步骤
第一步需要提前给fragment预留位置,通过一个容器视图,通常选择FrameLayout
新建类继承自fragment,然后重写相应的方法
-
最后在activity中通过FragmentManager将初始化的fragment加入到容器视图中
- 这里需要注意的是,在初始化fragment之前,应该先查找fragment是否已经有实例,因为在activity销毁重建时,会自动保存fragment,这样可以优先获取队列中保存好的fragment实例