最近被问到Activity的生命周期,竟然想不起来了,汗~ 这里再复习一下。
Activity生命周期共有9个状态,如图所示:
public class MyActivity extends Activity {
// 在Activity生命周期开始时被调用
public void onCreate(Bundle icicle) {
}
// onCreate完成后被调用,用来回复UI状态
public void onRestoreInstanceState(Bundle savedInstanceState) {
}
//当activity从停止状态重新启动时调用
public void onRestart(){
}
//当activity对用户即将可见的时候调用。
public void onStart(){
}
//当activity将要与用户交互时调用此方法,此时activity在activity栈的栈顶,用户输入已经可以传递给它
public void onResume(){
}
// Activity即将移出栈顶保留UI状态时调用此方法
public void onSaveInstanceState(Bundle savedInstanceState) {
}
//当系统要启动一个其他的 activity时调用(其他的activity显示之前),这个方法被用来提交那些持久数据的改变、停止动画、和其他占用 CPU资源的东西。由于下一个activity在这个方法返回之前不会resumed,所以实现这个方法时代码执行要尽可能快。
public void onPause(){
}
//当另外一个activity恢复并遮盖住此activity,导致其对用户不再可见时调用。一个新activity启动、其它activity被切换至前景、当前activity被销毁时都会发生这种场景。
public void onStop(){
}
//在activity被销毁前所调用的最后一个方法,当进程终止时会出现这种情况
public void onDestroy(){
}