こんにちは、今日は画面に関するライフサイクルについて書きたいと思います。
自分がアンドロイドの勉強をしてから、iPhoneの開発を始めたということもあって、
androidの視点から、iPhoneアプリの仕組みを見ていきたいと思います(^-^)/

androidでは画面の描写はActivityクラスが管理していますが、
iPhoneでは、UIViewControllerクラスが画面の描写を管理しています。

メソッドの対応関係は大体こんな感じだと思います。(①以外は内容が若干違います)

android : iPhone
① onCreate : viewDidLoad
② onStart : viewWillAppear
③ onResume : viewDidAppear
④ onPause : viewWillDisappear
⑤ onDestroy : viewDidDisappear


①はほとんど同じだと思います。どちらも描写前に1度だけしか呼び出されません。
②と③は描写されるたびに毎回呼び出されます(タブの切り替えなどでも呼ばれる)
少し違うのは、アンドロイドはどちらも描写前の処理で②③の順で実行されるのに対して
アイフォンは描写前に②、描写後に③が呼ばれるといったところでしょうか?
④と⑤も同じで、アンドロイドは終了前に④⑤の順で実行されますが、
アイフォンは終了前に④、終了後に⑤が呼ばれるようです。

androidには他にもonStopメソッドとonRestartメソッドがあるけど、アイフォンにはないのかな?
こうやってみるとiPhoneの方が若干シンプルかもしれませんね。

次回はデリゲートについて書いてみようかな?
では。





.