浅谈Activity的生命周期

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........................................... 

猜你喜欢

转载自blog.csdn.net/Zwousika/article/details/80564905