Android学习笔记——Android生命周期

Android中的Activity的创建及消亡有其自己的生命周期。

Activity01:

package com.android;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;

public class Activity01 extends Activity
{
	private static final String	TAG	= "Activity01";

	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		Log.v(TAG, "onCreate");
		
		Button button1 = (Button) findViewById(R.id.button1);
		/* 监听button的事件信息 */
		button1.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{
				/* 新建一个Intent对象 */
				Intent intent = new Intent();
				/* 指定intent要启动的类 */
				intent.setClass(Activity01.this, Activity02.class);
				/* 启动一个新的Activity */
				startActivity(intent);
				/* 关闭当前的Activity */
				Activity01.this.finish();
			}
		});
		/******************************/
		Button button3 = (Button) findViewById(R.id.button3);
		/* 监听button的事件信息 */
		button3.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{
				/* 关闭当前的Activity */
				Activity01.this.finish();
			}
		});
	}

	public void onStart()
	{
		super.onStart();
		Log.v(TAG, "onStart");
	}
	
	public void onResume()
	{
		super.onResume();
		Log.v(TAG, "onResume");
	}
	
	public void onPause()
	{
		super.onPause();
		Log.v(TAG, "onPause");
	}
	
	public void onStop()
	{
		super.onStop();
		Log.v(TAG, "onStop");
	}

	public void onDestroy()
	{
		super.onDestroy();
		Log.v(TAG, "onDestroy");
	}

	public void onRestart()
	{
		super.onRestart();
		Log.v(TAG, "onReStart");
	}
	
}
Activity02:

package com.android;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;

public class Activity02 extends Activity
{
	private static final String	TAG	= "Activity02";
	
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main2);
		Log.v(TAG, "onCreate");
		Button button = (Button) findViewById(R.id.button2);
		/* 监听button的事件信息 */
		button.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{
				/* 新建一个Intent对象 */
				Intent intent = new Intent();
				/* 指定intent要启动的类 */
				intent.setClass(Activity02.this, Activity01.class);
				/* 启动一个新的Activity */
				startActivity(intent);
				/* 关闭当前的Activity */
				Activity02.this.finish();
			}
		});
	}

	public void onStart()
	{
		super.onStart();
		
		Log.v(TAG, "onStart");
	}
	
	public void onResume()
	{
		super.onResume();
		Log.v(TAG, "onResume");
	}
	
	public void onPause()
	{
		super.onPause();
		Log.v(TAG, "onPause");
	}
	
	public void onStop()
	{
		super.onStop();
		Log.v(TAG, "onStop");
	}

	public void onDestroy()
	{
		super.onDestroy();
		Log.v(TAG, "onDestroy");
	}

	public void onRestart()
	{
		super.onRestart();
		Log.v(TAG, "onReStart");
	}
}

当我们Debug项目时,在DDMS界面可以看到打印的log信息 Activity01 onCreate->Activity01 onStart->Activity01 onResume.当我们点击按钮进入到Activity02时,打印出来的信息Activity01 onPause->Activity02 onCreate-> Activity02 onStart->Activity02 onResume->Activity01 onStop->Activity01 onDestroy.程序进入到Activity02时,Activity01并不会马上销毁,而是在Activity02其中之后将Activity01停止销毁。返回时也是一样。当我们点击exit退出时。Activity01 onPause->Activity01 onStop->Activity01 onDestroy.由此可以得出下图:

Android学习笔记——Android生命周期_第1张图片

你可能感兴趣的:(android)