Android学习笔记—Activity

本文详细介绍了Android中Activity的七个生命周期回调方法及其作用,并解释了四种不同的Activity启动模式,包括标准模式、栈顶复用模式、栈内复用模式和单实例模式。

1.Activity生命周期

(1) onCreate:表示Activity正在被创建,在这个方法中我们可以做一些初始化工作,比如加载界面布局资源和初始化Activity所需要的数据。

(2)onStart:Activity正在被启动,无法与用户交互。

(3)onRestart:Activity正在被重新启动,一般情况下当Activity从不可见状态重新变为可见状态时会被调用。

(4)onResume:Activity可见,可以与用户交互。

(5)onPause:Activity正在停止,正常情况下,紧接着onStop会被调用(特殊:当前台透明或者说Activity可见)。在这个方法可以做一些数据存储、停止动画等工作。

(6)onStop:Activity即将停止,可以做一些回收工作。

(7)onDestroy:Activity即将销毁,回收共作和释放资源。

异常情况:在Activity异常终止情况下,系统会调用onSaveInstanceState来保存当前Activity的状态,这个方法会在onStop之前掉用,当Activity被重新重新创建后会调用onRestoreInstanceState并可以获取onSaveInstanceState保存的Bunlde。

2.Activity启动模式

(1)standard:标准模式,系统默认。每次启动一个Activity都会重新创建新的实例。在这种模式下,谁启动了这个Activity,那么这个Activity就运行在启动它的那个Activity所在的栈中。
(2)singleTop:栈顶复用模式,如果新Activity已经位于任务栈的栈顶,那么此Activity不会被重新创建,eg:任务栈目前为ABCD,这个时候在次启动D那么任务栈依然为ABCD。
(3)singleTask:栈内复用模式。这是一种单例模式,只要Activity在一个栈中存在,那么多次启动该Activity不会重新创建实例。当再次启动这个Activity任务栈会移除该Activity前的其他实例。eg:当前任务栈ABCD,当再次启动B,这个时候任务栈为AB。
(4)singleInstance:单实例模式。加强版singleTask,除了singleTask的所有特性,还加一点该模式的Activity只能单独位于一个任务栈中。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值