LoginSignup
2
2

More than 3 years have passed since last update.

【Swift】ViewControllerのライフサイクル

Last updated at Posted at 2021-02-25

はじめに

この記事では、ViewControllerのライフサイクルについて簡単にまとめました。
⚠️当方初学のため認識違いがある可能性大です
誤りを見つけた際はコメントにて指摘していただけると幸いです🙇‍♀️🙇‍♂️

ライフサイクルの発火の流れ

①loadView(View読み込み前)
②viewDidLoad(View読み込み後)
③viewWillAppear(View表示前)
④viewWillLayoutSubviews(SubViewレイアウト前)
⑤viewDidLayoutSubviews(SubViewレイアウト後)
⑥viewDidAppear(View表示後)
⑦viewWillDisappear(View除去前)
⑧viewDidDisappear(View除去後)

目次

  1. loadView
  2. viewDidLoad
  3. viewWillAppear
  4. viewWillLayoutSubviews
  5. viewDidLayoutSubviews
  6. viewDidAppear
  7. viewWillDisappear
  8. viewDidDisappear

1. loadView

  • タイミング・・・viewがnilの状態でviewを呼び出そうとした時
  • 活用例  ・・・Viewの追加や制約の追加など、StoryBoardで行う操作のコードでの実装

2. viewDidLoad

  • タイミング・・・viewをメモリにロードした後
  • 活用例  ・・・クラス内で利用するオブジェクトの初期化

3. viewWillAppear

  • タイミング・・・viewをview階層に追加する直前、もしくはviewを表示するためにアニメーションが設定される前
  • 活用例  ・・・表示されるたびにviewを更新したい処理

4. viewWillLayoutSubviews

  • タイミング・・・viewがSubviewをレイアウトする前
  • 活用例  ・・・特になし

5. viewDidLayoutSubviews

  • タイミング・・・viewがSubviewをレイアウトした後
  • 活用例  ・・・特になし

6. viewDidAppear

  • タイミング・・・viewがview階層に追加された後
  • 活用例  ・・・ログの送信、操作のブロック

7. viewWillDisappear

  • タイミング・・・viewがview階層から削除される前
  • 活用例  ・・・特になし

8. viewDidDisappear

  • タイミング・・・viewがview階層から削除された後
  • 活用例  ・・・特になし
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2