Activity的生命周期详解

本文详细介绍了Android中Activity的生命周期,包括七个主要阶段:onCreate、onStart、onResume、onPause、onStop、onDestroy以及onRestart。通过这些函数的调用顺序,可以帮助开发者更好地理解和控制应用程序的行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

每个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生命周期的示意图,如下图所示

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( )
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值