HOME键窥探Android的Activity生命周期

  好久没有写技术博客了,前两篇博客写的都是一些自己的所见所闻和心里感受,今天说一说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 stub
11         super.onDestroy();
12         Log.v("onDestroy", "onDestroy()");
13     }
14 
15     @Override
16     protected void onPause() {
17         // TODO Auto-generated method stub
18         super.onPause();
19         Log.v("onPause", "onPause()");
20     }
21 
22     @Override
23     protected void onRestart() {
24         // TODO Auto-generated method stub
25         super.onRestart();
26         Log.v("onRestart", "onRestart()");
27     }
28 
29     @Override
30     protected void onResume() {
31         // TODO Auto-generated method stub
32         super.onResume();
33         Log.v("onResume", "onResume()");
34     }
35 
36     @Override
37     protected void onStart() {
38         // TODO Auto-generated method stub
39         super.onStart();
40         Log.v("onStart", "onStart()");
41     }
42 
43     @Override
44     protected void onStop() {
45         // TODO Auto-generated method stub
46         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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值