对于Android四大组件中的Activity(活动),我们在学习时,应该了解活动的生命周期。下面,我就说一些自己的理解:
首先是我画的周期图:
onCreate():在activity(活动)第一次被创建是调用,在这个方法中完成activity的初始化。
onStart():在活动由不可见变为可见的时候调用。
onResume():在活动准备和用户进行交互时调用。此时的活动一定位于返回栈的栈顶,并且处于运行状态。
onPause();这个方法在系统准备去启动或者恢复另一个活动的时候去调用。将一些消耗CPU的资源释放掉,以及保存一些关键的数据。
onStop();在活动完全不可见的时候调用。它和onPasue()方法的主要区别在与于,如何启动的新活动是一个对话框的活动,那么onPasue()方法会得到执行,而onStop()方法并不会执行。
onDestroy();在活动被销毁之前被调用,之后活动的状态将变为销毁状态。
onRestart();在活动由停止状态变为运行状态之前调用,也就是活动被重新启动了。
Activity(活动)可以分为三种生存期:
完整生存期:从onCreate()到onDestroy()。
可见生存期:从onStart()到onStop()
前台生存期:从onPause()到onStop()
Home方式与Back方式的区别:
Home:将activity切入后台(onPause()- onStop()- onDestroy())
将activity从后台切入前台(onCreate()- onStart()- onResume())
销毁重建
Back:将activity切入后台(onPause()- onStop())
将activity从后台切入前台(onRestart()- onStart()- onResume())
可见性变化