Activity和Fragment 的生命周期图解

Activity生命周期详细图解

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-64DybN8A-1663919940535)(C:\Users\Administrator\Pictures\学习\activity生命周期图解.png)]

onCreate()这是活动第一次被创建,活动的初始化操作
onState()活动由不可见到了可见的状态,即便无法与用户直接交互
onResume()活动一定处于栈顶,活动的视图一定是可见的,用户可可以直接交互
onPause()活动的视图不在最上方,但是依旧存在,但依然可见,比如弹窗、锁屏
onStop()活动完全不可见,但是活动依旧存在于后台
onDestory()调用后活动销毁,活动终止。
onRestart()活动被重新启动,必须调用在活动被销毁前,和活动不处于栈顶的时候

Fragment 的生命周期图解:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cE0IbDYp-1663919940537)(C:\Users\Administrator\Pictures\学习\activity生命周期图解.png)]

onAttach()将碎片和活动建立关联
onCreate()创建碎片的视图,只会调用一次
onCreateView()为碎片绘制视图时候调用,会将显示的视图返回
onActivityCreate()确保于碎片相关的活动已经创建完毕的时候调用
onStart()启动碎片的时候调用
onResume()这时候用户是可以和碎片交互的
onPuse()暂停碎片,用户无法与碎片直接交互
onStop()停止碎片,碎片对于用户而言已经不可见了
onDestoryView()销毁碎片的相关视图
onDestory()销毁碎片
onDetach()解除于活动的关联

在同一个活动中,当一个fragment被另一个fragment替代的时候:

​ 首先暂停然后停止当前的fragment,然后开始为新的fragment和activity建立联系,创建fragment、绘制fragment视图,在新的fragment已经在当前视图可见,然后启动的时候,我们才会销毁旧的fragfment 的视图,虽然销毁了旧视图,但是旧的fragmnet没有被销毁、也没有和activity解除关联。当旧视图被销毁后,新视图才处于栈顶,也就是我们可见的情况。

onPause: 7暂停fragment时候回调
onStop: 8停止fragment时候回调
onAttach: 1将fragment和activity建立联系时候调用
onCreate: 2创建fragment时候回调,会被调用一次
onCreateView: 3为fragment绘制视图时候调用,会将显示的view返回
onActivityCreated: 4在fragment所依赖的activity启动完成时候调用
onStart: 5fragment启动时候调用,
onDestroyView: 9销毁fragment相关的视图时候调用
onResume: 6恢复fragment时候调用,这时候的fragment可见,onStart方法后面一定回调onResume方法

返回上一个视图

​ 因为之前并没有销毁fragment,所以我们不需要重新创建fragment,我们直接绘制fragment的视图,当fragment启动之后,我们结束原来的新创建的fragment 的生命周期,然后旧fragment处于栈顶,可见。

onPause: 7暂停fragment时候回调
onStop: 8停止fragment时候回调
onCreateView: 3为fragment绘制视图时候调用,会将显示的view返回
onActivityCreated: 4在fragment所依赖的activity启动完成时候调用
onStart: 5fragment启动时候调用,
onDestroyView: 9销毁fragment相关的视图时候调用
onDestroy: 10fragment被销毁时候调用
onDetach: 11解除和activity的关联
onResume: 6恢复fragment时候调用,这时候的fragment可见,onStart方法后面一定回调onResume方法

由一个活动进入另一个活动,当前fragment的状态:

​ 活动和碎片都进入了onStop状态,而且碎片的状态变化优先于activity。

D/ BlankFragment03: onPause: 7暂停fragment时候回调
D/MainActivity: onPause: 活动不在最上面时候调用
D/ BlankFragment03: onStop: 8停止fragment时候回调
D/MainActivity: onStop: 活动完全不可见时候调用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值