Activity的生命周期
简述生命周期
onCreate
- 当Acitivity第一次被创建出来时会被触发,一般在这里要做的事情是创建视图等等。
onStart
- 当activity开始运行从不可见到可见就会触发这个方法。
onResume
- 当activity处于最上层和用户交互的时候触发这个方法。
onRestart
- 如果Activity之前被stop过,那么下一次onStart()方法之前会先触发这个方法。
onPause
- 当activity原本在最上层当被挤下去的时候触发这个方法。
onStop
- 当有其他的activity覆盖上了当前的activity时,不论其他的activity什么情况都会触发这个方法。
onDestroy
- 这是activity的生命周期的终点。有两种情况会触发它:①执行了activity的finish()方法;②由于Android系统资源不足等方面原因要清除activity所在的进程。
举例验证
- 当开始点击运行按钮时,依次onCreate()->onStart()->onResume()依次触发。
E/MainActivity: onCreate.....................
E/MainActivity: onStart..............................
E/MainActivity: onResume...............................
- 当点击Button按钮跳转页面时,依次是onPuase()->onStop();
E/MainActivity: onPause......................................
D/EGL_emulation: eglMakeCurrent: 0xe5061d60: ver 2 0 (tinfo 0xe5ae1c10)
E/MainActivity: onStop...........................................
- 当点击返回时,依次是onRestart()->onStart()->onResume();
E/MainActivity: onRestart.......................
E/MainActivity: onStart..............................
E/MainActivity: onResume...............................
- 当按下home键时,依次是onPause()->onStart();
E/MainActivity: onPause......................................
D/EGL_emulation: eglMakeCurrent: 0xe5061d60: ver 2 0 (tinfo 0xe5ae1c10)
E/MainActivity: onStop...........................................