一个Activity在启动的时候会执行onCreate()->onStart()->onResume(),在结束(或离开)的时候会执行onPause()->onStop()->onDestroy(),这就是一个Activity的生命周期。
因此要在onCreate方法里把Activity的需要的东西准备好,也就是初始化;在onResume里对Activity里的东西做一些调整;在onPause做一些清理和保存工作(保存持久状态),因为这是最后的机会,因为onPause完成之前Android不会结束托管Activity类的进程,而之后进程可能被结束。总结一下这几个周期方法的作用:
1. onCreate(): 创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态。
2. onStart(): Activity在屏幕上对用户可见时调用,该方法在 onCreate() 方法之后被调用,或者在 Activity 从 Stop 状态转换为 Active 状态时被调用,一般执行了onStart()后就执行onResume()
。
3. onResume():Activity开始和用户交互的时候调用,这时该Activity是在Activity栈的顶部。
4. onPause():Activity被暂停时调用,也就是你要对你能看到的这个Activity说byebye的时候调用,这里可以做一些清理和保存工作。当 Activity 被另一个透明或者 Dialog
样式的Activity 覆盖时的状态,此时它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但它已经失去了焦点故不可与用户交互。
5. onStop():Activity被停止或者Activity变成不可见时调用
6. onDestroy():Activity被从内存中移除,一般发生在执行finish方法时或者Android回收内存的时候
从文档中截取的生命周期图:
<p>版权声明:本文为博主原创文章,未经博主允许不得转载。</p>