今日學習Activity的生命週期
寫一個頁面來觀察Activity的階段
public class ActStartActivity extends AppCompatActivity implements View.OnClickListener {
private static final String TAG = "ning";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG,"ActStartActivity onCreat");
EdgeToEdge.enable(this);
setContentView(R.layout.activity_act_start);
findViewById(R.id.btn_next).setOnClickListener(this);
}
@Override
public void onClick(View view) {
startActivity(new Intent(this,ActFinishActivity.class));
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG,"ActStartActivity onStart");
}
@Override
protected void onResume() {
super.onResume();
Log.d(TAG,"ActStartActivity onResume");
}
@Override
protected void onPause() {
super.onPause();
Log.d(TAG,"ActStartActivity onPause");
}
@Override
protected void onStop() {
super.onStop();
Log.d(TAG,"ActStartActivity onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG,"ActStartActivity onDestory");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(TAG,"ActStartActivity onRestart");
}
}
有onCreate():用於初始化 Activity,應用程式開起來最先使用的
onStart():使Activity變得可見,將頁面顯示在螢幕上
onResume():使Activity可與用戶交互,例如可以響應用戶的點擊
onPause():讓Activity暫停活動,無法讓用戶與頁面交互
onStop():停止Activity,頁面將暫停顯示
onDestroy():摧毀Activity,回收系統資源
onRestart():重啟Activity,重新加載頁面數據
通常Activity的流程
了解生命週期,可以讓應用的狀態轉換變得更有效率
確保不會浪費多餘的資源 :)