关于android生命周期的一些学习总结
2017-02-24 19:25
435 查看
从一开始学Java到开始接触Android编程学习,给我的感觉是相似又不同。在Java中,一个程序的入口即main()函数,而在Android的中,你会发现找不到main函数,取而代之的,是它的生命周期。
简单来讲,当一个Android Activity以后,会调用onCreate()方法,对该Activity进行初始化。
onStart()方法会在启动该Activity时被调用(即当你打开一个Android应用程序时,该方法就会被调用)。
onResume()方法则是在你将一个应用暂时搁置暂停,重新打开启动时被调用。
onPause()方法,举个简单的例子,就是在你使用某个应用时,突然有一个电话打进来,被迫终止当前应用程序时调用,起到一个保存当前数据的作用。
onStop()方法,在停止Activity时被调用,和onDestroy()一般同时出现,都是在停止应用程序的时候被调用,但后者是销毁当前Activity。
onRestart()方法,顾名思义,是在重新启动Activity时被调用。
一般而言,正常情况下:
开始Activity,这个阶段会依次执行onCreate、onStart、onResume三个方法。
当Activity失去焦点,这一阶段会依次执行onPause、onStop方法。
当Activity重新获取焦点,又会依次执行onRestart、onStart、onResume方法。
关闭Activity,会依次执行onPause、onStop、onResume方法。
在执行过程中可以改变系统执行轨迹的是onPause和onStop,如果在执行onPause方法中Activity获得焦点,然后又失去焦点,系统将不会执行onStop,而是依次执行onPause、onResume、onPause。如果在执行onStop方法中Activity获得焦点,又失去焦点,将不执行onDestroy,而是依次执行onStop、onRestart、onStart、onResume、onPause、onStop。
简单来讲,当一个Android Activity以后,会调用onCreate()方法,对该Activity进行初始化。
onStart()方法会在启动该Activity时被调用(即当你打开一个Android应用程序时,该方法就会被调用)。
onResume()方法则是在你将一个应用暂时搁置暂停,重新打开启动时被调用。
onPause()方法,举个简单的例子,就是在你使用某个应用时,突然有一个电话打进来,被迫终止当前应用程序时调用,起到一个保存当前数据的作用。
onStop()方法,在停止Activity时被调用,和onDestroy()一般同时出现,都是在停止应用程序的时候被调用,但后者是销毁当前Activity。
onRestart()方法,顾名思义,是在重新启动Activity时被调用。
一般而言,正常情况下:
开始Activity,这个阶段会依次执行onCreate、onStart、onResume三个方法。
当Activity失去焦点,这一阶段会依次执行onPause、onStop方法。
当Activity重新获取焦点,又会依次执行onRestart、onStart、onResume方法。
关闭Activity,会依次执行onPause、onStop、onResume方法。
在执行过程中可以改变系统执行轨迹的是onPause和onStop,如果在执行onPause方法中Activity获得焦点,然后又失去焦点,系统将不会执行onStop,而是依次执行onPause、onResume、onPause。如果在执行onStop方法中Activity获得焦点,又失去焦点,将不执行onDestroy,而是依次执行onStop、onRestart、onStart、onResume、onPause、onStop。
相关文章推荐
- 关于J2EE+android的学习,自己的一些总结
- 一些关于Java面向对象学习、培训机构培训、大学生活状态的感悟和总结
- android 学习七 一些xml layout组件的说明(自己总结不断更新)
- 关于android蓝牙开发的一些总结
- [Android学习系列10]关于Task,Activity,BackStack的一些事
- Android动画学习Demo(2) 关于Property Animation的用法及总结
- 关于Android开发过程中,createImage的一些总结。
- 关于Hibernate的一些学习心得总结
- Cocos2d-x学习之---Andorid关于返回键退出的一些小总结
- 推荐本人关于Android的一些学习资料
- [Android学习系列9]关于Fragment的一些事
- Android中Activity生命周期学习总结。
- Android学习札记31:收集到的一些关于Handler和Runnable的问题(2)
- Cocos2d-x学习之---Andorid关于返回键退出的一些小总结
- 关于RDLC报表的一些总结,希望对正在学习使用它的朋友有所帮助
- 关于学习asp.net的一些总结
- 关于android jni的一些总结_补充中
- 关于今天数据库学习的一些内容和总结
- 关于学习的几点总结——Android源码学习有感
- Android动画学习Demo(1) 关于ViewAnimation的用法及总结