UIViewControllerのライフサイクル

iOSアプリにはライフサイクルが存在し、実装していく上で理解しておく必要があるようです。

なのでUIViewControllerのライフサイクルの各状態について整理しておくことにしました!

 

そもそもUIViewControllerとは

MVC(Model-View-Controller)アーキテクチャのC(Controller)を担う部分がUIViewControllerのようです。

描画するのに必要なデータを管理、操作した上でViewに渡しています。

それ以外にも他のViewControllerと連携する役割もあるようです。

 

UIViewControllerのライフサイクルの各状態

UIViewControllerは「画面がどんな状態にあるか」をライフサイクルという概念で表すようです。

以下のように分けられています。

  • viewDidLoad()
  • viewWillAppear()
  • viewDidAppear()
  • viewWillDisappear()
  • viewDidDisappear()
 
viewDidLoad()

画面がロードされた後呼び出されます

 

viewWillAppear()

Viewが表示される前に呼び出される

 

viewDidAppear()

Viewが表示された後に呼び出される

 

viewWillDisappear()

Viewを消す前に呼び出されます

 

viewDidDisappear()

Viewを消した後呼び出される

 

 

感想その他

ライフサイクルのどの状態の時に、初期化や必要なデータの取得などの処理を行うか見極める必要があるようです。

うまく処理が動かない時、原因を探る引き出しとなるようこれらの事を頭に入れておこうと思います!