Android studio教程:[5]活动的生命周期
想要学好安卓开发,就必须理解安卓软件的生命周期,明白一个活动的创建、启动、停止、暂停、重启和销毁的过程,知道各个阶段会调用什么函数进行处理不同的情况,这里我就通过一个简单的例子让大家明白一个活动的生命周期。

工具/原料
- Android studio
- 一部安卓手机或者安卓模拟器
Android studio如何重写函数
- 1
在Android studio中,如果需要重新某个函数,可以在菜单栏中的“code”下选择第一项“override methods”,或者按Ctrl+O打开。

- 2
在弹出的列表中找到需要重写的函数,以onStart()为例,不要看到没有搜索口就头疼了,直接在当前列表输入所需的函数即可。

- 3
然后就可以看到已经生成的重新函数了,每个重写函数前面都有一个@override的标志。在生成的代码中添加一句:
Log.d(tag, "In the onStart() event");
这样一来,一个活动的启动重写函数就完成了,其他函数都可以通过相同方式重写。

- 4
在创建好的项目的DemoActivity.java中,在类中添加:
String tag = "lifestyle";
在自动生成的onCreate中添加代码:
Log.d(tag,"In the onCreate() event");

- 5
按上述重写函数的方式分别重写:
onStart、onResume、onRestart、onPause、onStop、onDestroy。
在每个重写函数中分别加上:
Log.d(tag,"In the onStart() event");
Log.d(tag,"In the onResume() event");
Log.d(tag,"In the onRestart() event");
Log.d(tag,"In the onPause() event");
Log.d(tag,"In the onStop() event");
Log.d(tag,"In the onDestroy() event");
END
活动的生命周期
连接安卓手机进行仿真测试,shift+F10生成apk并在手机上自动安装。

刚启动时,活动需要经过创建、启动、继续三个阶段,对应着onCreate、onStart、onResume三个函数。onResume可以继续、重新开始、恢复三重含义。
在logcat窗口可以查看当前活动所处的状态。

当有别的活动在当前活动前显示,或者自动锁屏时,当前活动会暂停,调用onPause函数,重新回到当前活动时,会调用onResume函数。

当退回手机主页时,当前活动会从onResume状态通过onPause再到onStop,表示当前活动不可见,被停止。

但重新打开时,活动又由停止状态通过onReStart,onStart再重新回到onResume状态。

如果按下返回键退出程序,活动就会由onResume状态经过onPause、onStop最后调用onDestroy销毁活动。

本经验第一张图片给大家展示了一个活动的生命周期如何切换,又通过例子说明了不同状态下活动如何处理,相信大家对活动的生命周期有了相当的了解。这样就可以把握好程序编写的要领,在合适的函数中处理合适的事情,会让你的app更加完美。
Android studio教程:[5]活动的生命周期的更多相关文章
- 【Android】8.0活动的生命周期(一)——理论知识、活动的启动方式
1.0 Android是使用任务(Task)来管理活动的,活动就像栈一样堆放着在一起. 每个活动的生命周期最多可能会有四种状态: 1.1 运行状态 位于栈顶 1.2 暂停状态 不在栈顶但在界面上仍处于 ...
- Android基础知识05—活动的生命周期
------ 活动的生命周期 ------ Android是使用任务Task来管理活动的,一个任务就是一组存放在栈里的活动的集合.每当启动一个活动 ,他就会在返回栈中入栈,并处于栈顶位置.而每当我们按 ...
- 【Android】9.0活动的生命周期(二)——实际代码演示
1.0 新建一个项目ActivityLifeCycleTest. 新建两个活动NormalActivity和DialogActivity,勾选“Generate Layout File”. 文件目录 ...
- Xamarin.Android活动的生命周期
一.前言 用过Android手机的人一定会发现一种现象,当你把一个应用置于后台后,一段时间之后在打开就会发现应用重新打开了,但是之前的相关的数据却没有丢失.可以看出app的“生命”是掌握在系统手上的, ...
- Android笔记——活动的生命周期
一.活动的重要性 掌握活动的生命周期对任何 Android 开发者来说都非常重要,当你深入理解活动的生命周期之后,就可以写出更加连贯流畅的程序,并在如何合理管理应用资源方面,你会发挥的游刃有余.你的应 ...
- Android学习笔记(五)——活动的生命周期
//此系列博文是<第一行Android代码>的学习笔记,如有错漏,欢迎指正! 为了能写出流畅连贯的程序,我们需要了解一下活动的生命周期. 一.返回栈 Android 中的活动是可以层叠的. ...
- Android活动的生命周期
掌握活动的生命周期对任何Android开发者来说都非常重要,当你深入理解活动的生命周期之后,就可以写出更加连贯流畅的程序. -------------------------------------- ...
- android 活动的生命周期
掌握活动的生命周期非常重要,因为一个正常的android应用,会有很多的活动,如何在这些活动之间进行切换.数据的交互等,就经常会用到活动的生命周期这一块的知识.可以说,只要掌握了活动的生命周期,才能更 ...
- android:activity活动的生命周期
掌握活动的生命周期对任何 Android 开发者来说都非常重要,当你深入理解活动的生命 周期之后,就可以写出更加连贯流畅的程序,并在如何合理管理应用资源方面,你会发挥的 游刃有余.你的应用程序将会拥有 ...
随机推荐
- javascript 阻止多次点击造成的轮播混乱
function nextSlider(){ //使用b作为开关,只有动画完成后才能进行下一次运动 if(b){ //如果b为真,则马上设置b为false,如果startmove的回调没有重新设置b的 ...
- css中的伪类
伪类用于向某些选择器添加一些特殊效果. 1):focus 伪类在元素获得焦点的时向元素添加特殊样式.一般用于输入文本域,按钮,以及超链接. a:focus{color:red;}超链接字体为红色 in ...
- HTML5新增的拖放API---(一)
HTML5新增了关于拖放的API,通过API可以让HTML页面的任意元素都变成可拖动的,通过使用拖放机制可以开发出更友好的人机交互的界面. 拖放操作可以分为两个动作:在某个元素上按下鼠标移动鼠标(没有 ...
- SQL Server -SET QUOTED_IDENTIFIER
SET QUOTED_IDENTIFIER ON SQL SERVER的联机丛书的解释: “当 SET QUOTED_IDENTIFIER 为 ON 时,标识符可以由双引号分隔,而文字必须由单引号分隔 ...
- MySQL主从同步、读写分离配置步骤
现在使用的两台服务器已经安装了MySQL,全是rpm包装的,能正常使用. 为了避免不必要的麻烦,主从服务器MySQL版本尽量保持一致; 环境:192.168.0.1 (Master) 192.168. ...
- 关于UIWebview的属性的介绍
/* ViewController.h 文件 */ #import <UIKit/UIKit.h> @interface ViewController : ...
- ios学习笔记-数据持久化
沙盒 沙盒是一种数据安全策略,只允许自己的应用访问目录.可以使用NSHomeDirectory()获取. ios沙盒下有三个子目录: 1.Documents目录:用于存储比较大的文件活着需要频发女更新 ...
- mongo db 使用方法
1 下载 mogodb http://www.mongodb.org/display/DOCS/Downloads 2 打开服务 我安装在e盘下了 可以指定数据文件位置 到 E:\mongoDB\mo ...
- (转)创建和查看Javadoc文档
原地址:http://jinnaxu-tju-edu-cn.iteye.com/blog/667177 Javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类.方法.成员等注释形成一个和源代 ...
- 如何调用EcStore中的API接口
EcStore系统已内置了丰富的API接口供外部系统调用(接口列表见文章最下面),外部系统具体如何调用这些API呢? 例如有一个PHP的论坛需要调用ecstore系统内一个商品的详情,则可以使用b2c ...