android学习笔记“活动的生命周期“

上一篇说道连接多个活动之间的“桥梁”Intent,活动简单说就是展示给用户的界面。在我们操作界面的时候,界面存在显示、消失和毛孔、模糊(列入有弹框显示时)等状态,这些状态就是活动的“生命”的展示,活动的生命周期会一直伴随着一个活动,从显示到消失。

android的活动是可以叠加的,我们每开启一个新的活动,就会覆盖在原本的活动上面,当我们点击返回键是会返回上一个活动,使上一个活动重新显示出来(活动不是被重新创建的,只是显示出了之前创建的)。由此可知activity是由任务栈(Task)的形式来管理的,一个任务就是一组存放在栈里的活动的集合,这个栈也被称为返回栈(Back Stack)。栈是一种后进先出的数据结构,系统总是会把栈顶的活动显示给用户。当我们启动一个App的时候首先显示给我们的就是系统创建的第一个活动,位于栈顶显示给用户,之后我们跳转到一个新的界面时,新的活动入栈,成为新的栈顶活动,而之前的活动就位于新的下面。当我们点击back返回键时,新的栈顶活动被销毁,则位于下面的活动又重新变成了栈顶活动。我这只是简单的讲解,这其中活动的状态会发生变化,每个活动最多有四种状态:分别为运行状态、暂停状态、停止状态、销毁状态。它们很好理解,当一盒活动位于返回栈的栈顶时的状态为运行状态;当一个活动不再处于栈顶位置但仍然可见时为暂停状态(比如弹出体格窗口时);当一个活动离开栈顶位置变为完全不可见时(但仍然位于栈中)就是停止状态;当一个活动从返回栈中移除后就变成了销毁状态

下面就要讲一下活动的生存期了,activity中定义了7个回调方法,覆盖了活动生命周期的每一个环节。以下是那7个方法。

*onCreate()  它会在活动第一次被创建的时候调用。在这个活动中我们需要完成对活动的初始化操作。

*onStart()  它会在活动由不可见变得可见的时候调用。】

*onResume()  它会在活动活动准备好和用户进行交互(见面)的时候调用。此时活动已位于栈顶,处于运行状态。

*onPause()  它会在系统准备去启动或者恢复另一个活动的时候调用。

*onStop()  它会在活动完全不可见得时候调用。

*onDestory()  它会在活动被销毁之前调用,之后活动的状态将变为销毁状态。

*onRestart()  它会在活动由停止状态变为运行状态之前调用,也就是活动被重新启动了。

上面的7个方法除去onRestart()方法,其他都是两两相对的,从而可以分为三个生命周期。

完整生存期 活动在onCreate()和onDestroy()之间所经历的就是完整生存期。

可见生存期 活动在onStart()和onStop()之间所经历的就是可见生存期。

前台生存期 活动在onResume()和onPause()之间所经历的就是前台生存期。

活动的生命周期的代码有些长但是都很简单我就不一一演示了。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值