写三个简单的页面ActivityOne ActivityTwo ActivityThree测试Activity的生命周期
ActivityOne.java
public class ActivityOne extends Activity {
private final static String TAG = ActivityOne.class.getSimpleName();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG, "onCreate");
setContentView(R.layout.activityone_main);
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(ActivityOne.this, ActivityTwo.class));
}
});
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG, "onStart");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(TAG, "onRestart");
}
@Override
protected void onResume() {
super.onResume();
Log.d(TAG, "onResume");
}
@Override
protected void onPause() {
super.onPause();
Log.d(TAG, "onPause");
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
Log.d(TAG, "onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroy");
}
@Override
public void finish() {
super.finish();
Log.d(TAG, "finish");
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.d(TAG, "onActivityResult:"+requestCode+" resultCode:"+resultCode+" data:"+data.getAction());
}
}
ActivityTwo.java
package com.task.demo;
import com.view.androidview.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class ActivityOne extends Activity {
private final static String TAG = ActivityOne.class.getSimpleName();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG, "onCreate");
setContentView(R.layout.activityone_main);
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(ActivityOne.this, ActivityTwo.class));
}
});
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG, "onStart");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(TAG, "onRestart");
}
@Override
protected void onResume() {
super.onResume();
Log.d(TAG, "onResume");
}
@Override
protected void onPause() {
super.onPause();
Log.d(TAG, "onPause");
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
Log.d(TAG, "onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroy");
}
@Override
public void finish() {
super.finish();
Log.d(TAG, "finish");
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.d(TAG, "onActivityResult:"+requestCode+" resultCode:"+resultCode+" data:"+data.getAction());
}
}
ActivityThree.java
package com.task.demo;
import com.view.androidview.R;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class ActivityThree extends Activity {
private final static String TAG = ActivityThree.class.getSimpleName();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activitythree_main);
Log.d(TAG, "onCreate");
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG, "onStart");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(TAG, "onRestart");
}
@Override
protected void onResume() {
super.onResume();
Log.d(TAG, "onResume");
}
@Override
protected void onPause() {
super.onPause();
Log.d(TAG, "onPause");
}
@Override
protected void onStop() {
super.onStop();
Log.d(TAG, "onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroy");
}
@Override
public void finish() {
super.finish();
Log.d(TAG, "finish");
}
}
ActivityOne起来的Log:
11:47:56.577 D/ActivityOne(12356): onCreate
11:47:56.763 D/ActivityOne(12356): onStart
11:47:56.766 D/ActivityOne(12356): onResume
从ActivityOne跳转到ActivityTwo
11:47:56.577 D/ActivityOne(12356): onCreate
11:47:56.763 D/ActivityOne(12356): onStart
11:47:56.766 D/ActivityOne(12356): onResume
11:48:56.177 D/ActivityOne(12356): onPause
11:48:56.218 D/ActivityTwo(12356): onCreate
11:48:56.306 D/ActivityTwo(12356): onStart
11:48:56.308 D/ActivityTwo(12356): onResume
11:48:56.831 D/ActivityOne(12356): onStop
ActivityTwo跳转到ActivityThree
11:47:56.577 D/ActivityOne(12356): onCreate
11:47:56.763 D/ActivityOne(12356): onStart
11:47:56.766 D/ActivityOne(12356): onResume
11:48:56.177 D/ActivityOne(12356): onPause
11:48:56.218 D/ActivityTwo(12356): onCreate
11:48:56.306 D/ActivityTwo(12356): onStart
11:48:56.308 D/ActivityTwo(12356): onResume
11:48:56.831 D/ActivityOne(12356): onStop
11:50:10.490 D/ActivityTwo(12356): onPause
11:50:10.597 D/ActivityThree(12356): onCreate
11:50:10.598 D/ActivityThree(12356): onStart
11:50:10.601 D/ActivityThree(12356): onResume
11:50:11.114 D/ActivityTwo(12356): onStop
在ActivityThree按Back键回退到AcitityTwo
11:47:56.577 D/ActivityOne(12356): onCreate
11:47:56.763 D/ActivityOne(12356): onStart
11:47:56.766 D/ActivityOne(12356): onResume
11:48:56.177 D/ActivityOne(12356): onPause
11:48:56.218 D/ActivityTwo(12356): onCreate
11:48:56.306 D/ActivityTwo(12356): onStart
11:48:56.308 D/ActivityTwo(12356): onResume
11:48:56.831 D/ActivityOne(12356): onStop
11:50:10.490 D/ActivityTwo(12356): onPause
11:50:10.597 D/ActivityThree(12356): onCreate
11:50:10.598 D/ActivityThree(12356): onStart
11:50:10.601 D/ActivityThree(12356): onResume
11:50:11.114 D/ActivityTwo(12356): onStop
11:51:46.497 D/ActivityThree(12356): finish
11:51:46.499 D/ActivityThree(12356): onPause
11:51:46.517 D/ActivityTwo(12356): onRestart
11:51:46.518 D/ActivityTwo(12356): onStart
11:51:46.518 D/ActivityTwo(12356): onResume
11:51:46.949 D/ActivityThree(12356): onStop
11:51:46.949 D/ActivityThree(12356): onDestroy
在ActivityTwo按Back键回退到AcitityOne
11:47:56.577 D/ActivityOne(12356): onCreate
11:47:56.763 D/ActivityOne(12356): onStart
11:47:56.766 D/ActivityOne(12356): onResume
11:48:56.177 D/ActivityOne(12356): onPause
11:48:56.218 D/ActivityTwo(12356): onCreate
11:48:56.306 D/ActivityTwo(12356): onStart
11:48:56.308 D/ActivityTwo(12356): onResume
11:48:56.831 D/ActivityOne(12356): onStop
11:50:10.490 D/ActivityTwo(12356): onPause
11:50:10.597 D/ActivityThree(12356): onCreate
11:50:10.598 D/ActivityThree(12356): onStart
11:50:10.601 D/ActivityThree(12356): onResume
11:50:11.114 D/ActivityTwo(12356): onStop
11:51:46.497 D/ActivityThree(12356): finish
11:51:46.499 D/ActivityThree(12356): onPause
11:51:46.517 D/ActivityTwo(12356): onRestart
11:51:46.518 D/ActivityTwo(12356): onStart
11:51:46.518 D/ActivityTwo(12356): onResume
11:51:46.949 D/ActivityThree(12356): onStop
11:51:46.949 D/ActivityThree(12356): onDestroy
11:56:03.521 D/ActivityTwo(12356): finish
11:56:03.523 D/ActivityTwo(12356): onPause
11:56:03.540 D/ActivityOne(12356): onRestart
11:56:03.541 D/ActivityOne(12356): onStart
11:56:03.542 D/ActivityOne(12356): onResume
11:56:03.979 D/ActivityTwo(12356): onStop
11:56:03.979 D/ActivityTwo(12356): onDestroy
ActivityOne退出
11:58:21.359 D/ActivityOne(12356): finish
11:58:21.368 D/ActivityOne(12356): onPause
11:58:21.934 D/ActivityOne(12356): onStop
11:58:21.934 D/ActivityOne(12356): onDestroy
A