カテゴリー:
Activityクラス
閲覧数:465 配信日:2013-11-11 10:40
メソッド一覧
ライフサイクルに関するメソッド一覧
メソッド名 | 概要 | 内容 | 強制終了 | 次 |
---|---|---|---|---|
onCreate(Bundle) | 起動 | アプリケーションが起動した際に呼び出される(より正確には、アプリケーションが開始した際、「アクティビティを継承したクラス」のインスタンスオブジェクトが自動作成された段階で呼び出される) ・「インターフェイス作成」「アプリケーション初期化処理」「ビュー作成」「リストへのデータバインド」などは、このメソッドをオーバーライドしたメソッドへ記述 ・引数としてBundleクラスのオブジェクトを受け取る(このアクティビティの 以前の状態が保存されていた場合、このメソッドにはその状態を保持している Bundle オブジェクトが引数として渡される) ・この後には、必ず onStart() が呼び出される |
不可 | onStart() |
onStart() | 開始 | ・アクティビティが表示される(ユーザーから見えるようになる)直前に呼び出される ・その後、アクティビティがフォアグラウンドに表示された場合は onResume() が、他のアクティビティの後ろに隠れた場合は onStop() が呼び出される |
不可 | onResume()またはonStop() |
onResume() | 前面 | アプリの画面が表示される時、メソッドが呼び出される ・Activityが表示される(アクティビティがユーザとのやり取りを開始可能になる)直前、 自動的に呼ばれる ・この時点で、アクティビティはアクティビティ スタックの最上位にあり、ユーザーからの入力はこのアクティビティに対して行われる ・この後には、必ず onPause() が呼び出される |
不可 | onPause() |
onPause() | 背面 | 他のアプリの画面に変わった時、メソッドが呼び出される ・システムが別のアクティビティを開始しようとしているとき( アクティビティが最前列でなくなる前)に自動的に呼ばれる ・例→現在の画面が他の画面を呼んだとき、Activityが裏(バックグラウンド)に隠れる直前に呼び出される ・このメソッドは一般的に重い処理に対して使用 ・例→ファイルやDBなど、プログラム終了後もデータが失われないような場所へのデータ保存。アニメーションのように CPU を大量に消費する処理を停止する場合 ・このメソッドが終了するまでは次のアクティビティが開始されないため、できる限り短時間で実行できるようにしておく必要がある ・その後アクティビティが再び前面に表示されるとonResumeメソッドが呼ばれる。またユーザーから見えなくなった場合は onStop() が呼び出される |
可能 | onResume()またはonStop() |
onRestart() | 再開始 | ・アクティビティが再度開始される前(停止した後、それをもう一度開始する直前)に呼び出される ・この後には、必ず onStart() が呼び出される |
不可 | onStart() |
onStop() | 停止 | ・アクティビティがユーザーから見えなくなったとき(不可視になった後)に呼び出される ・見えなくなる状況としては、アクティビティが破棄された場合や、再開された別のアクティビティ(既存か新規かを問わず)によって隠された場合が考えられる ・その後、アクティビティがユーザーとの対話に戻った場合は onRestart() が、アクティビティが完全に終了する場合は onDestroy() が呼び出される ・メモリ残量が少ないと、このイベントは呼ばれないままプロセスが破棄される場合もある |
可能 | onRestart()またはonDestroy() |
onDestroy() | 破棄 | アプリが終了した時、メソッドが呼び出される ・アクティビティ終了時に呼び出される(アクティビティが破棄される直前に呼ばれる) ・これが、アクティビティが受け取る最後の呼び出しとなる ・このメソッドが呼び出される状況としては、アクティビティが完了する場合(finish() が呼び出されたとき)や、システムが領域を確保するために一時的にそのアクティビティのインスタンスを破棄する場合が考えられる ・これらの 2 つの状況は、isFinishing() メソッドを使用して識別できる |
可能 | なし |
アクティビティの状態を保存させるためにこのイベントを呼ぶ。
しかし、デフォルトですべての状態を保存してくれるので、通常は気にしなくてもよい
onRestoreInstanceState(Bundle)
onSaveInstanceStateによって保存された状態からアクティビティが再初期化される直前に呼び出される