LoginSignup
9
11

More than 5 years have passed since last update.

【Swift】loadViewの注意点

Last updated at Posted at 2019-05-03

loadViewを使用した際に困ったことを、備忘録として記載しておきます。

困ったこと

StoryBoardを使用することになった時に、loadViewを使ってレイアウトしていたせいで、作業が詰んでしまいました。

loadViewの呼ばれるタイミング

68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f34353532352f36373064303033382d366630332d303935662d636132322d3930633531306638626162662e706e67.png
引用:UIViewControllerのライフサイクル

loadViewするタイミングで、controllerが制御するviewの作成を行います。

loadViewの使用目的

  • xibを利用せず、コードでViewを作成する場合はオーバーライドする
  • コードでViewを作成する場合はloadViewにコーディングをする※ただし、UI部品のセットはこのメソッドでなくても問題ない

loadViewの注意点

  • StoryBoard(Interface Builder)やxibを使用する場合は、loadViewはオーバーライドしてはいけない
  • 当たり前といえば当たり前ですが、loadViewの中身を書かなくても、オーバーライドしているのでアウトです。
// UI 部品を View へセットする場合はこちらをオーバーライドします。
// ただし、UI 部品のセットはこのメソッドでなくても問題ありません。
override func loadView() {
    super.loadView()
    print("loadView")
}

// 初期表示時に必要な処理を設定します。
override func viewDidLoad() {
    super.viewDidLoad()
    print("viewDidLoad")
}

引用:【Swift】UIViewController ライフサイクル 簡易説明書 | ポケットリファレンス サンプル付き

loadViewを使うときは、StoryBoardやxibを使用しないか、きちんと確認しましょう。

参考リンク

9
11
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
9
11