上图理解的基础上运行下面程序,就会有清晰地认识。
程序清单:
import android.content.Intent;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.View;
import com.jerehedu.android_cursor.R;
import com.jerehedu.android_cursor.ch02.LoginActivity;
public class LifeCycleActivity extends Activity {
private int score=0;
/**
* 构建和用户进行交互的应用界面
* 只调用一次
* @param savedInstanceState
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_life_cycle);
Log.d("jereh","LifeCycleActivity-->onCreate");
if(savedInstanceState!=null){
score=savedInstanceState.getInt("score");
}
Log.d("jereh","score-->"+score);
}
/**
* 界面可视
*/
public void onStart(){
super.onStart();
Log.d("jereh","LifeCycleActivity-->onStart");
}
/**
* 可交互
*/
@Override
protected void onResume() {
super.onResume();
Log.d("jereh", "LifeCycleActivity-->onResume");
score=10;
}
/**
* 在onPause()与onStop()之间调用
* 保存状态,防止不测
* @param outState
*/
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("score",score);
Log.d("jereh", "LifeCycleActivity-->onSaveInstanceState");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d("jereh", "LifeCycleActivity-->onRestart");
}
/**
* 暂停(不可交互)
*/
@Override
protected void onPause() {
super.onPause();
Log.d("jereh", "LifeCycleActivity-->onPause");
}
/**
* 停止(不可见)
*/
@Override
protected void onStop() {
super.onStop();
Log.d("jereh", "LifeCycleActivity-->onStop");
}
/**
* 销毁,释放内存
*/
@Override
protected void onDestroy() {
super.onDestroy();
Log.d("jereh", "LifeCycleActivity-->onDestroy");
}
public void goLogin(View view){
Intent intent=new Intent(this, LoginActivity.class);
//启动Activity
super.startActivity(intent);
}
}
观察logcat窗口即可。