1.发现Android中的活动是可以层叠的,每启动一个新的活动,就会覆盖在原活动之上,
然后点击Back键会销毁最上面的活动,下面的一个活动就会重新显示出来。
2.Android是使用任务来管理活动的。一个任务就是一组存放在栈里的活动的集合,该栈
被称为返回栈(Back Stack)。栈是一种后进先出的的数据结构。
3.默认情况下,每启动一个新活动,会在返回栈中入栈,处于栈顶->每按下Back键或
调用finish()方法去销毁一个活动时,处于栈顶的活动会出栈->前一个入栈的活动就会
重新处于栈顶的位置。系统总是会显示处于栈顶的活动给用户。
4.活动状态:每个活动在其生命周期中最多有4种状态。
(1)运行状态:活动位于返回栈的栈顶
(2)暂停状态:活动不再处于栈顶,仍然可见。因为并不是每个活动都是占满整个屏幕
的,比如对话框形式的活动只会占用屏幕中间的部分区域。处于暂停状态的活动完全存活。
##只有在内存极低的情况下,系统才会考虑回收这种活动。
(3)停止状态:活动不再处于栈顶,且完全不可见。系统仍然会为这种活动保存相应的
状态和成员变量。并不完全可靠,其他地方需要内存时,处于停止状态的活动有可能会被
系统回收。
(4)销毁状态:从返回栈中移除就变成销毁状态。系统最倾向于回收这种状态的活动,
从而保证手机的内存充足。
5.活动的生存期:Activity类中定义了七个回调方法,覆盖了活动生命周期的每一个环节。
(1)onCreate():每个活动都重写这个方法,会在活动第一次被创建时被调用。在该方法
中完成活动的初始化操作,如加载布局,绑定事件等。
(2)onStart():在活动由不可见变为可见时调用。
(3)onResume():在活动准备好和用户进行交互的时候调用,此时活动处于运行状态。
(4)onPause():在系统准备去启动或者恢复另一个活动时调用。通常在这个方法中将一些
消耗CPU的资源释放掉,以及保存一些关键数据。但这个方法执行速度一定要快,不然会影
响到新的栈顶活动的使用。
(5)onStop():在活动完全不可见的时候调用。它和onPause()的主要区别在于,如果启动
的新活动是一个对话框式,则onPause()会执行,而onStop()并不会执行。
(6)onDestroy():在活动被销毁之前调用,之后活动状态将变为销毁状态。
(7)onRestart():在活动由停止状态变为运行状态之前调用,即活动重新启动了。

《第一行代码》学习笔记9-活动Activity(7)的更多相关文章

  1. 第一行代码阅读笔记---AndroidMainfest.xml分析

    按照这本书的指引,我随作者一样创建了一个安卓应用,开始了安卓开发的启程. 找到AndroidMainfest.xml这个文件,打开后看到了我创建的Activity在这个文件里被成功注册,文件内容如下: ...

  2. 《Android第一行代码》笔记

    学习Android开发差点儿相同有两年时间了.期间也做了大大小小的一些项目.近来抽出闲暇想把Android基础强化一下,之前在网上看到了郭霖郭大神的几篇博客.从中受益不少.于是花了近一周时间看完了郭神 ...

  3. 晒订单赢图灵图书,《第一行代码——Android》福利活动劲爆来袭!

    版权声明:本文出自郭霖的博客,转载必须注明出处. https://blog.csdn.net/sinyu890807/article/details/28863515 (已结束) 我的著作<第一 ...

  4. (Android第一行代码实验一)活动的最佳实践

    活动的最佳实践    1.知晓当前是在哪一个活动         这个技巧将教会你,如何根据程序当前的界面就能判断出这是哪一个活动.  首先需要新建一个 BaseActivity 继承自 Activi ...

  5. 第一行代码阅读笔记----显示隐式Intent的基本用法

    1.显示Intent意图明显,通过Intent启动另外一个活动,这是安卓中各组件进行交互的一种重要方式.一般用于启动活动,启动服务,发送广播等场景. 实现方法,这里我只说思路,实践还是要自己实操才能明 ...

  6. 第一行代码阅读笔记---详解分析第一个Android程序

    以下是我根据作者的思路,创建的第一个Android应用程序,由于工具强大,代码都自动生成了,如下: package com.example.first_app; import android.os.B ...

  7. python学习笔记1--python简介和第一行代码编写

    一.什么是python? python是一种面向对象,解释型语言,它语法简介,容易学习.本节博客就来说说本人学习python的心得体会. 二.python环境安装 目前python版本有python2 ...

  8. 通过《第一行代码》学习 Android 开发

    第一行代码 Android --第 2 版-- 郭霖 著 第 1 章:开始启程--你的第一行 Android 代码 •1.2 手把手带你搭建开发环境  Android Studio 的安装及配置  A ...

  9. 20172327 2018-2019-1 《第一行代码Android》第二章学习总结

    学号 2017-2018-2 <第一行代码Android>第二章学习总结 教材学习内容总结 - 活动是什么: 活动(Activity)是最容易吸引用户的地方,它是一种可以包含用户界面的组件 ...

  10. 20172327 2018-2019-1 《第一行代码Android》第一章学习总结

    学号 2018-2019-1 <第一行代码Android>第一章学习总结 教材学习内容总结 - Android系统架构: 1.Linux内核层 Android系统是基于Linux内核的,这 ...

随机推荐

  1. Edwin windows下基本命令:

    Ctrl-Alt-z: 对区域内所有代码求值. Ctrl-x Ctrl-e: 对光标左边或上一个表达式求值. Ctrl-c Ctrl-x: 中断当前求值. Ctrl-a: 移动到行首. Ctrl-e: ...

  2. C#--virtual,abstract,override,new,sealed

    virtual:使用此关键字,可以使其在派生类中被重写. abstract:抽象方法,由子类重写,或继续为抽象方法存在,并由其子子类实现. override: 重写父类方法,属性,或事件的抽象实现或虚 ...

  3. 一个小玩具:NDK编译SDL的例子

    NDK编译SDL 准备: 硬件 一台电脑,实验在Lenovo T430上 一个Android设备,实验在 三星S3/A7 编译环境: Ubuntu 14.04 (ant\java等命令必须支持) 工具 ...

  4. 微信支付:redirect_uri参数错误 的解决办法

    redirect_url参数错误: 报这个错误,说明你的公众号后台授权设置有问题(一般有两处) 一:检查授权目录 答:支付授权目录是网站发起请求的页面所在目录,并且必须是能通过url地址访问的(与真实 ...

  5. Spring MVC异常处理

    Spring Mvc 中异常处理,一般有两种解决办法: 一.利用org.springframework.web.servlet.handler.SimpleMappingExceptionResolv ...

  6. PHP页面中文乱码问题

    首先纯html页要用meta标签声明编码<meta http-equiv="Content-Type" content="text/html; charset=&q ...

  7. 《图解CSS3》——笔记(一)

    作者:大漠 勘误:http://www.w3cplus.com/book-comment.html 2014年7月14日14:46:35 第一章  揭开CSS3的面纱 1.1  什么是CSS3 CSS ...

  8. GO函数倒叙输出

    package main import "fmt" func main(){ rec() } func rec(i int){ { return } rec(i+) fmt.Pri ...

  9. python 3.5 猜数字游戏

    #!/usr/bin/env python #encoding: utf-8 number = 88 for i in range(1,6): num = int(input('gusee numbe ...

  10. QT中读取文本数据(txt)

    下面的代码实现读取txt文档中的数据,并且是一行一行的读取. void MainWindow::on_pushButton_clicked() { QFile file("abcd.txt& ...