Activity的生命周期
Posted Hmake
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Activity的生命周期相关的知识,希望对你有一定的参考价值。
介绍Activity的生命周期,我们得先了解什么是Activity。
Activity是一个负责与用户交互的组件,用户可以用来交互为了完成某项任务,
而且Activity提供一个屏幕,它上面能显示些控件并且监听用户的事件做出反应。
发一张Activity的生命周期图:
onCreate():
Activity由系统自动创建,被创建的时候,会自动运行该方法。该方法做一些初始化动作,比如
创建views,设置数据到list等等,该方法提供了一个Bundle类型的变量,该变量中有这个Activity以
前状态的信息,前提是以前存过这些信息。若在onCreate方法中加入finish方法,onCreate下一个运
行onDestroy方法。
onRestart():
该方法能将Activity从Stop状态唤醒,执行onStart方法前先执行onRestart方法。若在该方法中加
入finish方法,仍然会执行onStart方法直到onDestroy方法。
onStart():
当Activity对用户可见之前( “Activity对用户可见” 就是安卓设备的屏幕完全显示该程序且被聚焦)则
调用onStart方法。若在该方法加入finish方法,该方法之后则调用onStop --> onDestroy。
onResume():
当Activity开始与用户交互时,会调用onResume方法,并且将该Activity置于Activity栈的顶部(Activity
是由Activity栈进行管理的,当新的Activity进来时,新的Activity则被置于Activity栈的栈顶,之前的Activity位
于此Activity的底部)。该方法执行完则执行完onPause方法。
onPause():
当一个Activity执行完onResume方法后,就会执行该方法。或者Activity被其他Activity覆盖时,被覆盖的
Activity也会调用该方法。
onStop():
当这个Activity完全看不见的时候,就会执行onStop方法。还有3种情况也会执行onStop方法:
1.当有一个新的Activity被执行时,这个Activity就会被停止。
2.一个已经存在的Activity被切换到最前段。
3.这个Activity要被销毁了。
如果用户想要找回这个Activity,就得执行onStart方法;反之,则执行onDestroy方法。
onDestroy():
当Activity销毁前则执行该方法。
以上就是我对Activity生命周期的理解,可能存在误点,忘谅解。
以上是关于Activity的生命周期的主要内容,如果未能解决你的问题,请参考以下文章