Android studio教程:[5]活动的生命周期
Android studio如何重写函数
-
在Android studio中,如果需要重新某个函数,可以在菜单栏中的“code”下选择第一项“override methods”,或者按Ctrl+O打开。
-
在弹出的列表中找到需要重写的函数,以onStart()为例,不要看到没有搜索口就头疼了,直接在当前列表输入所需的函数即可。
-
然后就可以看到已经生成的重新函数了,每个重写函数前面都有一个@override的标志。在生成的代码中添加一句:
Log.d(tag, "In the onStart() event");
这样一来,一个活动的启动重写函数就完成了,其他函数都可以通过相同方式重写。
-
在创建好的项目的DemoActivity.java中,在类中添加:
String tag = "lifestyle";
在自动生成的onCreate中添加代码:
Log.d(tag,"In the onCreate() event");
-
按上述重写函数的方式分别重写:
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]活动的生命周期](http://d.hiphotos.baidu.com/exp/w=500/sign=2005c6134836acaf59e096fc4cd88d03/5d6034a85edf8db120f9f94e0a23dd54574e74c1.jpg)
![Android studio教程:[5]活动的生命周期](http://g.hiphotos.baidu.com/exp/w=500/sign=43c36e010df41bd5da53e8f461db81a0/0b55b319ebc4b7457d743e3cccfc1e178a821533.jpg)
![Android studio教程:[5]活动的生命周期](http://b.hiphotos.baidu.com/exp/w=500/sign=802a0fadd3a20cf44690fedf46084b0c/3b292df5e0fe99256599e17a37a85edf8db17107.jpg)
![Android studio教程:[5]活动的生命周期](http://f.hiphotos.baidu.com/exp/w=500/sign=7c2e0be75166d0167e199e28a72ad498/8b82b9014a90f6033678146d3a12b31bb151edd4.jpg)
![Android studio教程:[5]活动的生命周期](http://e.hiphotos.baidu.com/exp/w=500/sign=e4c1253fbf315c6043956befbdb1cbe6/3ac79f3df8dcd100be9e710b718b4710b9122f9d.jpg)
![Android studio教程:[5]活动的生命周期](http://f.hiphotos.baidu.com/exp/w=500/sign=8ee9085f40a98226b8c12b27ba82b97a/0bd162d9f2d3572c74f216f68913632762d0c38c.jpg)
![Android studio教程:[5]活动的生命周期](http://a.hiphotos.baidu.com/exp/w=500/sign=f1cc669cca177f3e1034fc0d40cf3bb9/d50735fae6cd7b89be55cea90c2442a7d9330eda.jpg)
![Android studio教程:[5]活动的生命周期](http://e.hiphotos.baidu.com/exp/w=500/sign=5c0ab9f657e736d158138c08ab504ffc/b2de9c82d158ccbf888542101ad8bc3eb13541db.jpg)
![Android studio教程:[5]活动的生命周期](http://c.hiphotos.baidu.com/exp/w=500/sign=36219cc58eb1cb133e693c13ed5556da/bba1cd11728b4710bb9b0ae6c0cec3fdfc032367.jpg)
![Android studio教程:[5]活动的生命周期](http://d.hiphotos.baidu.com/exp/w=500/sign=2a7ff630c55c1038247ecec28211931c/d4628535e5dde71153c0b5dca4efce1b9d16618e.jpg)
![Android studio教程:[5]活动的生命周期](http://b.hiphotos.baidu.com/exp/w=500/sign=f3c53419928fa0ec7fc7640d1697594a/359b033b5bb5c9ea84dbf5c9d639b6003af3b3f4.jpg)
![Android studio教程:[5]活动的生命周期](http://f.hiphotos.baidu.com/exp/w=500/sign=9880c96101087bf47dec57e9c2d3575e/6a600c338744ebf89f599215daf9d72a6059a7f4.jpg)
浙公网安备 33010602011771号