Android之Activity的生命周期

Activity是Android的核心类,全名是android.app.Activity.  每一个Activity提供了一个可视化的区域。这个区域可以放置各种Android组件,例如按钮、图像、文本框等。

那么这样一个Activity,从启动应用程序到关闭应用程序,它到底是怎样动作,或者是怎样开启和关闭的呢?生命周期到底是怎样的呢?下面看个例子

新建一个安卓工程,修改MainActivity.java

package com.mmc.Activitycycle;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d("onCreate", "onCreate Method is executed");
    }

	@Override
	protected void onDestroy() {
		// TODO Auto-generated method stub
		super.onDestroy();
		Log.d("onDestroy", "onDestroy Method is executed");
	}

	@Override
	protected void onPause() {
		// TODO Auto-generated method stub
		super.onPause();
		Log.d("onPause", "onPause Method is executed");
	}

	@Override
	protected void onRestart() {
		// TODO Auto-generated method stub
		super.onRestart();
		Log.d("onRestart", "onRestart Method is executed");
	}

	@Override
	protected void onResume() {
		// TODO Auto-generated method stub
		super.onResume();
		Log.d("onResume", "onResume Method is executed");
	}

	@Override
	protected void onStart() {
		// TODO Auto-generated method stub
		super.onStart();
		Log.d("onStart", "onStart Method is executed");
	}

	@Override
	protected void onStop() {
		// TODO Auto-generated method stub
		super.onStop();
		Log.d("onStop", "onStop Method is executed");
	}


}
在Android应用程序中不能使用System.out.println
然后打开eclipse里面的Logcat,完成下面的步骤

1)启动应用程序‘;

2)按接听按钮,进入通话记录界面,再返回;

Android之Activity的生命周期_第1张图片

3)关闭应用程序;

再点一次2)里第二次按的按钮即可退出。


这时,在LogCat里可以看到

Android之Activity的生命周期_第2张图片

可以看到Activity的三个生命周期,

onResume ---- onPause   焦点生命周期

onRestart ----....---- onStop   可视生命周期

onCreate --- ....--- onDestroy   整体生命周期

通过仿真,可以看出在什么样的情况下是在执行什么样的方法。

刚启动应用程序的时候,是执行三个方法。onCreate   onStart onResume

而当按了接听按钮之后,启动另外一个Activity时,那么就要先停止现在的Activity,所以按了接听按钮后,

执行两个方法   onPause   onStop

当退出接听Activity,回到应用程序的时候,执行的是 onRestart  onStart  onResume

当再按下退出应用程序的时候,就应该是毁灭,onPause  onStop  onDestroy

你可能感兴趣的:(Android之Activity的生命周期)