logo

Android アクティビティのライフサイクル

アンドロイドのアクティビティ

Android アクティビティのライフサイクル android.app.Activityクラスの7つのメソッドで制御されます。 Android アクティビティは ContextThemeWrapper クラスのサブクラスです。

アクティビティは Android の単一画面です。 Javaのウィンドウやフレームのようなものです。

アクティビティを利用すると、すべての UI コンポーネントまたはウィジェットを 1 つの画面に配置できます。

アクティビティの 7 ライフサイクル メソッドは、アクティビティがさまざまな状態でどのように動作するかを記述します。

二分探索のアルゴリズム

Android アクティビティのライフサイクル メソッド

Android アクティビティの 7 つのライフサイクル メソッドを見てみましょう。

方法説明
作成時 アクティビティが最初に作成されたときに呼び出されます。
onStart アクティビティがユーザーに表示されるようになったときに呼び出されます。
onResume アクティビティがユーザーとの対話を開始するときに呼び出されます。
onPause アクティビティがユーザーに表示されないときに呼び出されます。
オンストップ アクティビティがユーザーに表示されなくなったときに呼び出されます。
再起動時 アクティビティが停止した後、開始する前に呼び出されます。
破壊する アクティビティが破棄される前に呼び出されます。
Androidアクティビティのライフサイクルファイル: activity_main.xml
 

Android アクティビティのライフサイクルの例

アクティビティのライフサイクル メソッドの呼び出しに関する詳細が提供されます。この例では、logcat のコンテンツを表示しています。

ファイル: MainActivity.java
 package example.javatpoint.com.activitylifecycle; import android.app.Activity; import android.os.Bundle; import android.util.Log; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d('lifecycle','onCreate invoked'); } @Override protected void onStart() { super.onStart(); Log.d('lifecycle','onStart invoked'); } @Override protected void onResume() { super.onResume(); Log.d('lifecycle','onResume invoked'); } @Override protected void onPause() { super.onPause(); Log.d('lifecycle','onPause invoked'); } @Override protected void onStop() { super.onStop(); Log.d('lifecycle','onStop invoked'); } @Override protected void onRestart() { super.onRestart(); Log.d('lifecycle','onRestart invoked'); } @Override protected void onDestroy() { super.onDestroy(); Log.d('lifecycle','onDestroy invoked'); } } 

出力:

エミュレータまたはデバイスには出力が表示されません。 logcat を開く必要があります。

Androidアクティビティライフサイクルの出力例1

logcat で、onCreate、onStart、onResume メソッドが呼び出されていることを確認してください。

Androidアクティビティライフサイクルの出力例2

ホームボタンをクリックしてください。 onPause メソッドが呼び出されていることがわかります。

Androidアクティビティライフサイクルの出力例3

しばらくすると、onStop メソッドが呼び出されていることがわかります。

Androidアクティビティライフサイクルの出力例4

今度はエミュレータで見てみましょう。ホーム上にあります。次に、中央のボタンをクリックしてアプリを再度起動します。

Androidアクティビティライフサイクルの出力例5

次に、ライフサイクルアクティビティアイコンをクリックします。

Androidアクティビティライフサイクルの出力例6

logcat で、onRestart、onStart、および onResume メソッドが呼び出されていることを確認してください。

Androidアクティビティライフサイクルの出力例7

エミュレータが表示されると、アプリケーションが再起動されます。

Androidアクティビティライフサイクルの出力例8

ここで「戻る」ボタンをクリックしてください。 onPause メソッドが呼び出されていることがわかります。

整数倍精度Java
Androidアクティビティライフサイクルの出力例9

しばらくすると、onStop メソッドと onDestroy メソッドが呼び出されていることがわかります。

Androidアクティビティライフサイクルの出力例10

onCreate() メソッドと onDestroy() メソッドは、アクティビティのライフサイクル全体で 1 回だけ呼び出されます。