Activityクラスの7つの状態メソッドを書き直して、Activityのライフサイクルを示します。

プロジェクトの作成時に自動的に生成されるMainActivityクラスで、Android Studioメニューバーの上にある[コード]ボタンをクリックし、[メソッドのオーバーライド]メニューオプションを選択します。Android Studioには、このクラスでオーバーライドできるすべてのメソッドが一覧表示されます(複数選択の場合は、Ctrlキーを押しながら右クリックして選択します)

ここに画像の説明を挿入します

アクティビティライフサイクルで7つのメソッドを選択し(システムは自動的にonCreate()メソッドを追加します)、[OK]ボタンをクリックして対応する書き換えメソッドを生成します

ここに画像の説明を挿入します
ここに画像の説明を挿入します
コード

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;

public class MainActivity extends AppCompatActivity {
    
    

    private static final String TAG = "ActivityTest";

    @Override
    public void onCreate(Bundle savedInstanceState) {
    
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.d(TAG, "执行了onCreate()方法");
    }
    @Override
    protected void onStart() {
    
    
        super.onStart();
        Log.d(TAG, "执行了onStart()方法");
    }

    @Override
    protected void onStop() {
    
    
        super.onStop();
        Log.d(TAG, "执行了onStop()方法");
    }

    @Override
    protected void onDestroy() {
    
    
        super.onDestroy();
        Log.d(TAG, "执行了onDestroy()方法");
    }

    @Override
    protected void onPause() {
    
    
        super.onPause();
        Log.d(TAG, "执行了onPause()方法");
    }

    @Override
    protected void onResume() {
    
    
        super.onResume();
        Log.d(TAG, "执行了onResume()方法");
    }

    @Override
    protected void onRestart() {
    
    
        super.onRestart();
        Log.d(TAG, "执行了onRestart()方法");
    }
}

上記のコードは、Log.d()メソッドを使用してログ情報を記録します。Loglogクラスは、プログラムの実行中に関連情報を記録できます。

Android Studio IDEウィンドウの下部にある[Logcat]ボタンをクリックして、AndroidMonitorウィンドウをポップアップします。LogCatウィンドウから、データ転送プロセスを表示できます。

ここに画像の説明を挿入します

シミュレーターを起動してActivityTestアプリケーションを実行すると、シミュレーターで実行結果を確認できます。デフォルトでは、Hello Worldインターフェイスが表示されます。[戻る]ボタンをクリックしてプログラムを終了します。この時点で、プログラムはシミュレータのインストール済みプログラムのリストに表示されています。次に、シミュレーターでアプリケーションを実行し、LogCatの表示結果を観察します。

1つテストする

シミュレーターのアプリケーションリストインターフェイスに入り、ActivityTestアイコンをクリックしてアプリケーションを開くと、LogCatウィンドウでアクティビティが開始されたときの状態遷移プロセスを確認できます。

ここに画像の説明を挿入します
ここに画像の説明を挿入します

「戻る」ボタンをクリックしてアプリケーションを終了し、アクティビティが戻ったときの状態遷移プロセスを表示します

ここに画像の説明を挿入します
ここに画像の説明を挿入します
概要: LogCatウィンドウで、タグ列の値がActivityTestである行は、注意が必要な情報です。システムはonCreate()、onStart()、onResume()を順番に呼び出してアクティビティを作成します。[戻る]ボタンをクリックすると、onPause()、onStop()、onDestroy()が呼び出されてアクティビティが終了します。

2つテストする

2番目のテストは、Android Studioに付属のエミュレーターを使用してテストし、AVDマネージャーを開いて、エミュレーターを起動することです。

ここに画像の説明を挿入します
ここに画像の説明を挿入しますここに画像の説明を挿入します

シミュレーターでActivityTestを開始し、[ホーム]ボタンをクリックします。次に、シミュレーターの下の[ダイヤル]ボタンをクリックして電話をかけ、[戻る]ボタンをクリックしてダイヤラーアプリケーションを終了します。最後に、シミュレーターのホームページシミュレーター内のすべてのアプリケーションのリストを表示し、ActivityTestアイコンをクリックしてアプリケーションを開きます。LogCatの出力を表示する

ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
ここに画像の説明を挿入します
概要:呼び出しアプリケーションの実行中、システムはonStop()メソッドを呼び出して、ActivityTestアプリケーションを一時停止状態に切り替えます。ActivityTestが画面に再び表示されると、3つのメソッドが順番に実行されますonRestart()、onStart()およびonResume()。

おすすめ

転載: blog.csdn.net/weixin_42768634/article/details/115022956