Android アクティビティのライフサイクル android.app.Activityクラスの7つのメソッドで制御されます。 Android アクティビティは ContextThemeWrapper クラスのサブクラスです。
アクティビティは Android の単一画面です。 Javaのウィンドウやフレームのようなものです。
アクティビティを利用すると、すべての UI コンポーネントまたはウィジェットを 1 つの画面に配置できます。
アクティビティの 7 ライフサイクル メソッドは、アクティビティがさまざまな状態でどのように動作するかを記述します。
二分探索のアルゴリズム
Android アクティビティのライフサイクル メソッド
Android アクティビティの 7 つのライフサイクル メソッドを見てみましょう。
方法 | 説明 |
---|---|
作成時 | アクティビティが最初に作成されたときに呼び出されます。 |
onStart | アクティビティがユーザーに表示されるようになったときに呼び出されます。 |
onResume | アクティビティがユーザーとの対話を開始するときに呼び出されます。 |
onPause | アクティビティがユーザーに表示されないときに呼び出されます。 |
オンストップ | アクティビティがユーザーに表示されなくなったときに呼び出されます。 |
再起動時 | アクティビティが停止した後、開始する前に呼び出されます。 |
破壊する | アクティビティが破棄される前に呼び出されます。 |
Android アクティビティのライフサイクルの例
アクティビティのライフサイクル メソッドの呼び出しに関する詳細が提供されます。この例では、logcat のコンテンツを表示しています。
ファイル: MainActivity.javapackage 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 を開く必要があります。
logcat で、onCreate、onStart、onResume メソッドが呼び出されていることを確認してください。
ホームボタンをクリックしてください。 onPause メソッドが呼び出されていることがわかります。
しばらくすると、onStop メソッドが呼び出されていることがわかります。
今度はエミュレータで見てみましょう。ホーム上にあります。次に、中央のボタンをクリックしてアプリを再度起動します。
次に、ライフサイクルアクティビティアイコンをクリックします。
logcat で、onRestart、onStart、および onResume メソッドが呼び出されていることを確認してください。
エミュレータが表示されると、アプリケーションが再起動されます。
ここで「戻る」ボタンをクリックしてください。 onPause メソッドが呼び出されていることがわかります。
整数倍精度Java
しばらくすると、onStop メソッドと onDestroy メソッドが呼び出されていることがわかります。