Android Fragment生命周期

要了解Fragment,首先需要了解它的生命周期,同时与Activity的生命周期的关联也是非常重要的。

Fragment的生命周期

image

Fragment和Activity的生命周期关联


以上内容出处链接:https://www.jianshu.com/p/0a4b3825ff9f

以下内容出处链接:https://www.cnblogs.com/zhinengfeiyu/p/5384312.html


刚打开Activity:
Fragment onAttach > Fragment onCreate > Fragment onCreateView 
> Activity onCreate > Fragment onActivityCreated 
> Activity onStart > Fragment onStart > 
Activity onResume > Fragment onResume 


关闭Activity:
Fragment onPause > Activity onPause 
> Fragment onStop > Activity onStop 
> Fragment onDestroyView > Fragment onDestroy > Fragment onDetach > Activity onDestroy 


进入下一个Activity:
Fragment onPause > Activity onPause 
> Fragment onStop > Activity onStop 


返回到当前Activity:
Activity onRestart > Activity onStart > Fragment onStart 
> Activity onResume > Fragment onResume 


添加Fragment:
onCreate > onCreateView > onActivityCreated > onStart > onResume 
Fragment添加后是否加入返回栈,生命周期都一样,pop即完全移除到onDetach 


移除Fragment(未添加到返回栈):
onPause > onStop > onDestroyView > onDestroy > onDetach 


移除Fragment(添加到返回栈):
onPause > onStop > onDestroyView 


使用popBackStack恢复移除的Fragment:
onCreateView > onActivityCreated > onStart > onResume 

写在xml中的静态Fragment,移除后虽然变成null,但视觉上并不会消失;只有在代码中动态添加的Fragment,移除后才会真正消失

FragmentTransaction调用addToBackStack(null)可以在commit之前任何时候,包括在实施增删改Fragment之前调用,之后popBackStack的效果都是一样的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值