FC2ブログ
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

プログラムを作成する上で、ライフサイクルってとても重要ですよね。
こればかりは知らないと、どの状態でどう実装するのか想像することもできませんよね。

あ、想像はできるか・・。ん、知らない事を想像するのは妄想??

というわけで、簡単にAndroidの妄想をまとめて見ました。


■アクティビティという言葉

Android のインターフェイス、つまり画面はアクティビティというものによって表現されます。
そしてアクティビティは、画面を開いたり、何か行ったり、閉じたりと個々のライフサイクルを持っています。



■Android のライフサイクル

書籍 初めてのAndroid (気になる方は左のメニューからどうぞ) によると


だそうです。

マウス絵むずかしい。

これらの状態が遷移するときに、イベントが起こります。
そのイベントに合わせて、適切なコードを書くことでいろんな事が実現できるわけですね!

では、以下にどの状態からどの状態に遷移した場合に、どのようなイベントが発生するかを
記述します。
■遷移時に発生するイベント

※(1)?の順番に発生します。


1.起動⇒実行

(1) onCreate()
(2) onStart()
(3) onRestoreInstanceState()
(4) onResume()


2.実行⇒一時停止

(1) onSaveInstanceState()
(2) onPause()


3.一時停止⇒実行

(1) onResume()


4.一時停止⇒終了

(1) onSaveInstanceState
(2) onStop


5.一時停止⇒破棄済み

(1) Process killed


6.終了⇒実行

(1) onRestart()
(2) onStart()
(3) onResume()


7.終了⇒破棄

(1) onDestroy()
(または、Process killed)


■イベントの内容

onCreate(Bundle)
アクティビティが最初に起動するときに呼び出される。
インターフェイスの作成や、一度しか行わない最初の初期化処理を主に書くことになるとおもいます。


onStart()
アクティビティが表示される直前に呼ばれます。


onResume()
アクティビティがユーザとのやり取りを始められるようになる直前に呼ばれます。


onPause()
アクティビティがバックグラウンドに隠れるときに呼ばれます。
例としては、現在の画面が他の画面を呼んだときなど。


onStop()
アクティビティが隠れた状態で、しばらく使わないかもって場合に呼ばれます。
メモリ残量が少ないと、このイベントは呼ばれないままプロセスが破棄される場合もあるそうです。


onRestart()
終了状態になったアクティビティが再び実行される場合に呼ばれます。


onDestroy()
アクティビティが破棄される直前に呼ばれます。


onSaveInstanceState(Bundle)
アクティビティの状態を保存させるためにこのイベントを呼ぶ。
しかし、デフォルトですべての状態を保存してくれるので、通常は気にしなくてもよい。


onRestoreInstanceState(Bundle)
onSaveInstanceStateによって保存された状態からアクティビティが再初期化される直前に呼び出される。


それぞれのイベントについて、何か例を書けたらいいんですけどね。
それはまた後日ということで・・
スポンサーサイト

コメント
コメントを投稿
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可
 
トラックバック
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。