生命周期描述的是一个类从创建(new出来)到死亡(垃圾回收)的过程中会执行的方法。在这个过程中,会针对不同的生命阶段调用不同的的方法。
Activity是Android中四大组件之一,是最常见的应用组件,也是用的最多的组件,它能够提供一个界面与用户进行交互。Activity从创建到销毁有多种状态,从一种状态到另一种状态时会激发相应的回调方法,这些回调方法包括:onCreate onDestory onStart onStop onResume onPause。这些方法都是两两对应的,onCreate-->创建与onDestory-->销毁;onStart-->可见与onStop-->不可见;onResume-->可编辑(焦点)和onPause-->未获得焦点。最后还有一个方法是onRestart,这个方法在什么时候调用呢?当Activity被onStop后,但是并没有onDestory,即并没有被销毁时,用户重新回到当前Activity时,就调用onRestart方法,这里就不再是调用onCreate方法了。
代码如下 | 复制代码 |
publicclassMainActivityextendsActionBarActivity { privatefinalstaticString TAG ="MainActivity"; @Override // Activity被创建时调用 protectedvoidonCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.e(TAG,"onCreate......."); } @Override // 该状态用户可见,但是用户还不能与之进行交互 protectedvoidonStart() { super.onStart(); Log.e(TAG,"onStart......."); } @Override // 该状态是Activity获得用户焦点,用户可以与之进行交互 protectedvoidonResume() { super.onResume(); Log.e(TAG,"onResume......."); } @Override //与onResume对应,当Activity失去焦点时调用 protectedvoidonPause() { super.onPause(); Log.e(TAG,"onPause......."); } @Override //与onStart对应,当Activity不可见时调用 protectedvoidonStop() { super.onStop(); Log.e(TAG,"onStop......."); } @Override //与onCreate对应,当Activity被销毁时调用 protectedvoidonDestroy() { super.onDestroy(); Log.e(TAG,"onDestroy......."); } @Override //Activity从后台重新回到前台调用 protectedvoidonRestart() { super.onRestart(); Log.e(TAG,"onRestart......."); } } |
Activity的完整生命周期:oncreate-->onstart-->onresume-->onpause-->onstop-->ondestory。用户在点击返回键的时候,Activity会销毁,这时Activity先是不可编辑,再是不可见,最后被销毁。而当用户点击home键的时候,即表示退回到桌面,这时的Activity并不会被销毁,所以这里现实不可编辑,再是不可见,这时并不会调用onDestory方法被销毁,此时再点击进入该应用,会调用onRestart方法,不再是调用Activity,然后再是调用onStart,onResume。
下面是Activity的生命周期图:
凡尔赛法环免广告版 最新版v1.69.1
下载天煞异种 安卓版v1.0.21
下载十三月 (Undecember)最新官方中文版v3.26.0200
下载我不是废柴无限99999钻999999金币游戏 不减反增版v1.2.16
下载我的女友是声优免广告 安卓版v1
我的女友是声优免广告是一款非常好玩的模拟经营类手游,玩家在游
石器帝国去广告版 v8
石器帝国免广告版是游戏的破解版本,在该版本中为玩家去除了广告
校园恋爱模拟器真人版去广告版 v0.0.7
校园恋爱模拟器真人版免广告版是游戏的破解版本,在该版本中为玩
教练我要开球馆内置菜单修改器 安卓版v1.5.4
教练我要开球馆内购版是一款模拟经营类游戏,玩家们将在游戏中创
我的游轮无限砖石 安卓版v1.7.0
我的游轮无限金币钻石版是一款模拟经营类游戏,你将成为一艘游轮