使い所
・画面を作成する前に特定の操作をさせたい
例:ユーザー状態チェック
・画面を描画させるたびに特定の操作をさせたい
例:ユーザー状態に応じてメッセージを変える
・画面が切り替わる前に、切り替わった後に特定の操作をさせたい
例:ユーザーの状態に応じて次の画面遷移先を変える
画面呼び出し時に使われるメソッドまとめ
// 初回ロード時の処理 override func viewDidLoad() { super.viewDidLoad() print("初回ロード時の処理") } // 画面が表示される前の処理 override func viewWillAppear(_ animated: Bool) { print("画面が表示される前の処理") } // 画面が表示された後の処理 override func viewDidAppear(_ animated: Bool) { print("画面が表示された後の処理") } // 画面が閉じる前の処理 override func viewWillDisappear(_ animated: Bool) { print("画面が閉じる前の処理") } // 画面が閉じた後の処理 override func viewDidDisappear(_ animated: Bool) { print("画面が閉じた後の処理") } // メモリ不足の処理 override func didReceiveMemoryWarning() { print("メモリ不足時の処理") }
Xcodeのログに以下のように表示される
初回ロード時の処理 画面が表示される前の処理 画面が表示された後の処理 アプリがアクティブになった時の処理 アプリがアクティブになる直前の処理 アプリがバックグランドになった時の処理
サンプル
https://github.com/satoNobu/study_swift/commit/67c16e80ee3158c37408b92fd32f2510f3f97df1