博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HOME键窥探Android的Activity生命周期
阅读量:4921 次
发布时间:2019-06-11

本文共 2441 字,大约阅读时间需要 8 分钟。

  好久没有写技术博客了,前两篇博客写的都是一些自己的所见所闻和心里感受,今天说一说Android中的Activity的生命周期,此篇文章使用HOME键作为测试。我是真机测试,机型是三星I9260,系统是Android4.1,下面进入正题。

  其实在很久以前就有人写过Activity生命周期,但是我看了一下,基本上都是千篇一律,给你一张图然后上面有各种小箭头和圆圈,看着就很高深的样子,这样没有几个人会耐心看下去。今天我做了一个很小的程序,就是写了一下Activity的七个小方法。代码就贴在下面,可以略过。

1 @Override 2     protected void onCreate(Bundle savedInstanceState) { 3         super.onCreate(savedInstanceState); 4         Log.v("onCreate", "onCreate()"); 5         setContentView(R.layout.activity_main); 6     } 7  8     @Override 9     protected void onDestroy() {10         // TODO Auto-generated method stub11         super.onDestroy();12         Log.v("onDestroy", "onDestroy()");13     }14 15     @Override16     protected void onPause() {17         // TODO Auto-generated method stub18         super.onPause();19         Log.v("onPause", "onPause()");20     }21 22     @Override23     protected void onRestart() {24         // TODO Auto-generated method stub25         super.onRestart();26         Log.v("onRestart", "onRestart()");27     }28 29     @Override30     protected void onResume() {31         // TODO Auto-generated method stub32         super.onResume();33         Log.v("onResume", "onResume()");34     }35 36     @Override37     protected void onStart() {38         // TODO Auto-generated method stub39         super.onStart();40         Log.v("onStart", "onStart()");41     }42 43     @Override44     protected void onStop() {45         // TODO Auto-generated method stub46         super.onStop();47         Log.v("onStop", "onStop()");48     }

好了,让我运行一下这个小程序,运行成功后在LogCat中打印这样的信息。

11-24 16:29:30.875: V/onCreate(16405): onCreate()

11-24 16:29:30.914: V/onStart(16405): onStart()
11-24 16:29:30.914: V/onResume(16405): onResume()

然后呢,我按了一下我小三的HOME键,LogCat会出现下面的信息。

11-24 16:32:33.906: V/onPause(16405): onPause()

11-24 16:32:34.586: V/onStop(16405): onStop()

接着,我点击我的应用程序,重新进入到应用中,LogCat出现下面的信息。

11-24 16:33:48.633: V/onRestart(16405): onRestart()

11-24 16:33:48.633: V/onStart(16405): onStart()
11-24 16:33:48.633: V/onResume(16405): onResume()

最后,我觉得这个程序有些烂,于是乎我长按HOME键然后将其结束掉,LogCat会打印下面的信息。

11-24 16:35:14.266: V/onDestroy(16405): onDestroy()

好了,上面只是一些打印信息,下面开始讲解一下Activity的生命周期,在此我摘录一段网上比较好的话。

onCreate:在这里创建界面,做一些数据的初始化工作。

onStart:用户可见但是不可交互。

onResume:用户可见而且可交互。

onPause:可见但是不可交互,系统会停止动画等消耗CPU的事情。

onStop:变得不可见。

onDestroy:被干掉。

通过上面几句话,其实你可以自己明白这个过程是怎么回事了。在此我就不多说了,大家可以自己继续探讨Activity的奥秘。

 

转载于:https://www.cnblogs.com/linzhichao86/p/Android_Activity.html

你可能感兴趣的文章
C#.NET常见问题(FAQ)-如何判断某个字符是否为汉字
查看>>
数据的类型以及内置方法
查看>>
继承之super关键字的使用
查看>>
XML - 报表数据的新大陆
查看>>
echart在X轴下方添加字
查看>>
Map集合的两种取出方式
查看>>
GridView,Repeater增加自动序号列
查看>>
SMO算法精解
查看>>
第k小元素学习记录
查看>>
avi文件格式详解【转】
查看>>
django
查看>>
Java学习从入门到精通
查看>>
查找目录下的所有文件中是否含有某个字符串 linux
查看>>
2018年各大互联网前端面试题四(美团)
查看>>
一起学Python:字符串介绍
查看>>
学习笔记:树状数组
查看>>
洛谷P1772 [ZJOI2006]物流运输 题解
查看>>
CF519E A and B and Lecture Rooms
查看>>
python-redis之数据类型二
查看>>
Java类加载机制
查看>>