用白话文描述activity生命周期

来源:互联网 发布:天刀萌妹子捏脸数据 编辑:程序博客网 时间:2024/05/01 11:47

综述

activity是android四大组件之一,也非常重要,可以说,如果你的app没有它,就不叫app了,而可能是一种服务service,人家摸不着看不到。熟悉activity的生命周期非常重要,因为我们需要在生命周期的回调函数中控制一些对象存亡。比如,你现在正在play game,high住,但这个时候有人电话你,此时游戏app需要在onpause回调方法中暂停游戏,然后电话进程把当前游戏的activity挤到后台运行,当电话进程结束后,操作系统会重新从任务栈中恢复刚才的game app,即退出到后台的activity(当然啦,前提是当时没被系统kill掉)。很多人喜欢从代码中printf来研究它的生命周期,但从我的角度上看,该做法不够生动,也容易忘记,下面我将从一个全新的角度,根据实际的应用场景with白话文描述它的“人生”。吐舌头


1 谷歌眼中activity“人生”的轨迹

下图是从官方文档中偷来的轨迹图,初学者可能会像我以前那样,心里怨念“什么狗屁玩意”,呵呵,接下来将从另一张图开始解析它,看完我的分析后再回过头来看这图就很清晰了。




2 从app实际操作分析activity的人生轨迹

对于activity的生命周期有那么几个概念需要了解:

1、界面获取焦点:该界面我们可以操作

2、界面失去焦点:该界面我们可以看见,但是不能操作,比如对话框弹出来,原界面被模糊化,此时我们只能操作对话框但是不能操作原界面



图中的约定:1、文本框描述的是针对app以及设备的操作

2、注释框描述的是同一个activity(即界面①)的回调方法被调用的顺序



备注 1、对话框风格的activity意思是通过layout文件自定义的对话框



0 0
原创粉丝点击