1つは、アクティビティライフサイクルの4つの状態です。
- 実行状態は
、表示され、ユーザーと対話できる状態です。 - 一時停止状態
アクティビティは別の透過的なアクティビティまたはダイアログアクティビティでカバーされていますが、引き続き表示され、ユーザーと対話する機能が失われます。 - 状態
の停止アクティビティは、別の透過的なアクティビティまたはダイアログアクティビティによって完全にカバーされ、すべての状態とメンバーの情報を維持しますが、表示されません - 切断された
アクティビティがシステムによって強制終了されてリサイクルされたか、開始されなかった
2つ、アクティビティライフサイクルの7つの方法
- onCreate
- onStart
- onResume
- onPause
- onStop
- onDestroy
- onRestart
3.ライフサイクルの例
主なコードの内容は、7つのメソッドを書き直すことです(2つのアクティビティでは、次のコードに従って7つのメソッドが書き直されます)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show__image);
System.out.println("ShowImage_onCreate");
}
@Override
public void onStart()
{
super.onStart();
System.out.println("ShowImage_onStart");
}
public void onRestart()
{
super.onRestart();
System.out.println("ShowImage_onRestart");
}
public void onResume()
{
super.onResume();
System.out.println("ShowImage_onResume");
}
public void onPause()
{
super.onPause();
System.out.println("ShowImage_onPause");
}
public void onStop()
{
super.onStop();
System.out.println("ShowImage_onStop");
}
public void onDestroy()
{
super.onDestroy();
System.out.println("ShowImage_onDestroy");
}
1. 1つのアクティビティで別のアクティビティを開始し(完全なカバレッジ)、
別のアクティビティコードにジャンプします
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button btn_image;
@SuppressLint("WrongViewCast")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn_image=findViewById(R.id.imageshow);
btn_image.setOnClickListener(this);
System.out.println("MainActivity_onCreate");
}
@Override
public void onClick(View view) {
Intent intent=new Intent();
intent.setAction("openimage");
intent.addCategory(Intent.CATEGORY_DEFAULT);
startActivity(intent);
}
}
実行結果
開くアプリを、
別のアクティビティを開き、
出口新しい活性およびAPP
2.開始つの活性(完全に覆われていない)内の別の活性を
、上記のコードに基づいて、次の変更を行う。
結果を実行する。
オープンアプリ、
他を開きますアクティビティを実行し、
新しいアクティビティとAPPを閉じ
ます。3 。
変更せずに水平画面と垂直画面を切り替えます
APP
水平画面を垂直画面に開きます
コンテンツを変更します
実行結果変更を
追加した後、水平画面と垂直画面を切り替えますアクティビティは7つのメソッドのいずれも呼び出しません。
第四に、アクティビティのライフサイクルプロセス
上記の例から、次のようなプロセスを描くことができます。
全体として、アクティビティのライフサイクルの変化は、主に状態変化を実現するための7つのメソッドの呼び出しです。