跟活动一样,碎片在其生命周期内也会经历运行状态,暂停状态,停止状态以及销毁状态这四种状态,下面将分别进行说明。
- 运行状态:
碎片可见并且它所关联的活动正处于运行状态时。 - 暂停状态:
当一个活动进入暂停状态即由于另一个未占满屏幕的活动被添加到栈顶时,与它相关联的可见碎片就会进入暂停状态。 - 停止状态:
当一个活动进入停止状态时,与它相关联的碎片就会进入停止状态。或者通过调用FragmentTransaction的remove(), replace()方法将碎片从活动中移除,但如果在事务提交之前调用了addToBackStack()方法,这时的碎片也会进入停止状态。总的来说,进入停止状态的碎片对用记来说是完全不可见的,有可能会被系统回收。 - 销毁状态:
当活动被销毁时,与它相关联的碎片就会进入销毁状态。或者通过调用FragmentTransaction的remove(), replace()方法将碎片从活动中移除,但如果在事务提交之前并没有调用addToBackStack()方法,这时的碎片也会进入销毁状态。
- 运行状态:
碎片提供了一些附加的回调方法
- onAttach(): 当碎片和活动建立关联的时候调用。
- onCreateView(): 当碎片创建视图即加载布局的时候调用。
- onActivityCreated(): 当与碎片相关联的活动已经创建完毕的时候调用。
- onDestroyView(): 当与碎片关联的视图被移除的时候调用。
- onDetach(): 当碎片与活动解除关联的时候调用。
碎片(Fragment)的状态与附加回调
最新推荐文章于 2023-03-09 11:35:15 发布