Activity的生命周期详解
2016-11-01 16:08
127 查看
每个Activity都有生命周期,在不同阶段会回调不同的生命周期函数,Activity的生命周期函数与如下几个
1. onCreate( )
我们在创建继承自Activity的类时都会默认生成这个函数。它会在Activity第一次被创建时调用,通常在这个函数完成Activity的初始化操作,如设置布局、初始化视图、绑定事件等。
2. onStart( )
这个函数在Activity的onCreate函数调用之后被调用,此时的Activity还处于不可见状态,它的下一个状态就是Activity变得可见的时候,也就是这个函数在Activity可见之前被调用。
3. onResume( )
这个函数在Activity变为可见时被调用,执行完onResume之后,Activity就会请求AMS渲染它所管理的视图。此时的Activity一定位于返回栈的栈顶,并且处于运行状态。
4. onPause( )
这个函数在系统准备去启动或恢复另一个Activity时调用,也就是在Activity即将从可见状态变成不可见时。我们通常会在这个函数中将一些消耗CPU的资源释放掉,以及保存一些关键数据。
5. onStop( )
这个函数在Activity完全不可见时调用。它和onPause函数的主要区别在于,如果新启动的Activity是一个对话框式的Activity,那么onPause会得到执行,而onStop函数并不会执行。
6. onDestroy( )
这个函数在Activity被销毁之前调用,之后Activity的状态将变成销毁状态。
7. onRestart( )
这个函数在Activit由停止状态爱重新变为运行状态之前调用,也就是Activity被重新启动了。
从onCreate( )函数到onDestroy( )函数运行的时期就是一个Activity的完整生命周期。
为了帮助读者更好地理解,Android官方提供了一个Activity生命周期的示意图,如下图所示
![](https://img-blog.csdn.net/20161101154652044?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Activity的生命周期
Activity的常见活动的生命周期情况
启动Activity:onCreate( ) ->onStart( ) -> onResume,Activity进入运行状态
当前Activity 转到新的Activity界面或按Home键回到主屏:onPause( ) -> onStop( ),进入停滞状态
Activity返回前台:onRestart( ) -> onStart( ) -> onResume( ),再次回到运行状态
按Back键:onPause( ) -> onStop( ) -> onDestroy( ) ,Activity被销毁了,如果重新进入运行状态,则要重新启动Activity,即onCreate( ) ->onStart( ) -> onResume,Activity进入运行状态
锁屏:onPause( ) -> onStop( )
解锁:onStart( ) -> onResume( )
1. onCreate( )
我们在创建继承自Activity的类时都会默认生成这个函数。它会在Activity第一次被创建时调用,通常在这个函数完成Activity的初始化操作,如设置布局、初始化视图、绑定事件等。
2. onStart( )
这个函数在Activity的onCreate函数调用之后被调用,此时的Activity还处于不可见状态,它的下一个状态就是Activity变得可见的时候,也就是这个函数在Activity可见之前被调用。
3. onResume( )
这个函数在Activity变为可见时被调用,执行完onResume之后,Activity就会请求AMS渲染它所管理的视图。此时的Activity一定位于返回栈的栈顶,并且处于运行状态。
4. onPause( )
这个函数在系统准备去启动或恢复另一个Activity时调用,也就是在Activity即将从可见状态变成不可见时。我们通常会在这个函数中将一些消耗CPU的资源释放掉,以及保存一些关键数据。
5. onStop( )
这个函数在Activity完全不可见时调用。它和onPause函数的主要区别在于,如果新启动的Activity是一个对话框式的Activity,那么onPause会得到执行,而onStop函数并不会执行。
6. onDestroy( )
这个函数在Activity被销毁之前调用,之后Activity的状态将变成销毁状态。
7. onRestart( )
这个函数在Activit由停止状态爱重新变为运行状态之前调用,也就是Activity被重新启动了。
从onCreate( )函数到onDestroy( )函数运行的时期就是一个Activity的完整生命周期。
为了帮助读者更好地理解,Android官方提供了一个Activity生命周期的示意图,如下图所示
Activity的生命周期
Activity的常见活动的生命周期情况
启动Activity:onCreate( ) ->onStart( ) -> onResume,Activity进入运行状态
当前Activity 转到新的Activity界面或按Home键回到主屏:onPause( ) -> onStop( ),进入停滞状态
Activity返回前台:onRestart( ) -> onStart( ) -> onResume( ),再次回到运行状态
按Back键:onPause( ) -> onStop( ) -> onDestroy( ) ,Activity被销毁了,如果重新进入运行状态,则要重新启动Activity,即onCreate( ) ->onStart( ) -> onResume,Activity进入运行状态
锁屏:onPause( ) -> onStop( )
解锁:onStart( ) -> onResume( )
相关文章推荐
- Activity详解(生命周期、以各种方式启动Activity、状态保存,完全退出等)
- android activity详解二:Activity的生命周期
- Android Activity生命周期详解
- activity "生命周期"详解
- Activity详解(生命周期、以各种方式启动Activity、状态保存,完全退出等)
- Activity生命周期详解
- Activity的生命周期详解
- Activity生命周期详解
- Activity详解(生命周期、以各种方式启动Activity、状态保存,完全退出等)
- Android开发之:Activity生命周期详解
- android activity详解二:Activity的生命周期
- 详解Activity ——生命周期
- Android 程式开发:(一)详解Activity —— 1.1生命周期(前言)
- Android Activity 生命周期详解
- 【Android Training - 01】详解Activity生命周期 [ Lesson 3 - 停止与重启Activity ]
- 【Based Android】详解android中activity的完整生命周期
- Activity 生命周期详解
- 【Android Training - 01】详解Activity生命周期 [ Lesson 1 - 启动与销毁Activity ]
- 有关Android Activity生命周期详解
- Android开发笔记-Activity生命周期详解