Android_Activity_2

onPause():

当第一个Activity通过Intent启动第二个Activity的时候,将调用第一个Activity的onPause()方法.然后调用第二个Activity的onCreate(),onStart(),onResume()方法,接着调用第一个Activity的onStop()方法如果Activity重新获得焦点则将调用onResume()方法;如果此Activity进入用户不可见状态,那么将调用onStop()方法

onStop():

当第一个Activity被第二个Activity完全覆盖,或者被销毁的时候回调用此方法如果此Activity还会与用户进行交互,将调用onRestart方法();如果此Activity还会与用户进行交互,将调用onRestart方法()被销毁,那么将调用onDestroy0方法.

onDestroy():

Activity被销毁之前调用此方法.或者是调用finish()方法结束Activity的时候用此方法.可以在此方法中进行收尾工作,比如释放资源等.

Activity 生命周期概述

Android Activity的生命周期是由一系列回调方法组成的,这些方法在特定的时间点被调用,帮助开发者管理Activity的状态。以下是Activity生命周期的主要回调方法及其调用顺序:

onCreate(Bundle savedInstanceState):

当Activity首次创建时调用。
如果Activity之前存在过,并且由于配置变化(如屏幕旋转)被销毁后重新创建,那么savedInstanceState 参数将包含Activity之前的实例状态。这里通常用于初始化 Activity 的 UI 组件和其他必要的设置。、

onStart():

当Activity变为可见时调用。
这意味着Activity对用户来说是可以看到的,但它可能还没有焦点。

onResume():

当Activity获取焦点并且准备好与用户交互时调用。
这时Activity完全可见并且处于活跃状态。

onPause():

当Activity失去焦点时调用,但不一定不可见。
比如,当一个对话框Activity出现时,当前Activity就会调用onPause()。
此时应该停止所有可能消耗资源的操作。

onStop():

当Activity对用户来说完全不可见时调用。
这可能是由于另一个Activity完全覆盖了当前Activity。
如果Activity以后还会与用户交互,那么会调用onRestart();如果Activity将被销毁,则调用onDestroy()。
onRestart():
当Activity由不可见变为可见时调用。
通常发生在Activity被另一个Activity(非透明主题)覆盖之后重新变为可见的情况。
onSaveInstanceState(Bundle outState):
在系统销毁Activity之前调用,通常是因为配置变化(如屏幕旋转)或内存不足。
允许你在Activity实例被销毁前保存其状态,以便在Activity重建时恢复。
onDestroy():
当Activity即将被永久移除时调用。
通常在这里进行清理操作,如释放分配给Activity的资源,注销广播监听器等。
生命周期流程图
以下是Activity生命周期的流程图:

深色版本
Activity未启动 -> onCreate() -> onStart() -> onResume()
|---不可见状态---|       |---用户可交互状态---|
|                |       |
|                <-> onPause() (部分可见)
|                |
|                <-> onStop() (完全不可见)
|                |
V                V
onDestroy() -> Activity销毁
示例场景
假设我们有两个Activity:ActivityA和ActivityB。当从ActivityA启动ActivityB时,会经历如下过程:

调用ActivityA的onPause()。
调用ActivityB的onCreate()、onStart()、onResume()。
调用ActivityA的onStop()。
如果ActivityB关闭或用户返回到ActivityA,则会经历相反的过程:

调用ActivityB的onPause()。
调用ActivityA的onRestart()、onStart()、onResume()。
如果ActivityB被销毁,则会调用onDestroy()。
理解这些回调方法及其调用顺序对于编写高效可靠的Android应用程序至关重要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值