1:Androidアクティビティのライフサイクル図Android
の4つの主要コンポーネントの1つであるアクティビティは、より重要です。次の図は、アクティビティのライフサイクルプロセスを示しています。
2:4つの状態[running-poused-stopped-killed]
(1)running現在画面に表示されているアクティビティ(タスクスタックの一番上にあります)、ユーザーに表示される状態。
(2)ポーズはまだユーザーに表示されますが、インターフェイスのフォーカスが失われ、アクティビティはユーザーと対話できません。
(3)停止したユーザーは現在のインターフェースを見ることができず、ユーザーと対話することもできません。完全にカバーされています。
(4)強制終了現在のインターフェースは破棄され、システムがリサイクルされるのを待ちます。
3:簡単な例を使用して、実行中のプロセスを説明します。
ライフサイクルごとにログの印刷方法を追加して、アクティビティサイクルを観察します。
package com.example.activitylife15;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("---onCreate---","创建");//添加标记+提示信息
}
@Override
protected void onStart(){
super.onStart();
Log.i("---onStart---","可见");//添加标记+提示信息
}
@Override
protected void onResume(){
super.onResume();
Log.i("---onResume---","可用");//添加标记+提示信息
}
@Override
protected void onPause(){
super.onPause();
Log.i("---onPause---","不可用");//添加标记+提示信息
}
@Override
protected void onStop(){
super.onStop();
Log.i("---onStop---","不可见");//添加标记+提示信息
}
@Override
protected void onDestroy(){
super.onDestroy();
Log.i("---onDestroy---","销毁");//添加标记+提示信息
}
@Override
protected void onRestart(){
super.onRestart();
Log.i("---onRestart---","从不可见到重新可见");//添加标记+提示信息
}
}
(1)実行後、Logcatにチェックインし、対応するシミュレーターとプロジェクトを選択し、Infoを選択して、表示する必要のあるメッセージをフィルター処理します。
(2)実行後、ライフサイクル図と同じであることがわかります。最初にonCreate> onStart> onResume
(3)この時点で、シミュレーターを再度クリックします。
onCreate> onStart> onResume> onPause> onStop> onDestroy
戻った後、システムはプロセスを自動的にシャットダウンします
(4)別の種類のonRestartがあります。これは、マルチタスクオプションでデスクトップに戻った後にプロセスに再度入ることです。プロセスは非表示および使用不可から再び表示に変わり
ます。OnCreate> onStart> onResume> onPause> onStop> onRestart > onStart> OnResume
と公式ウェブサイトをリンクできます。