iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
0
Mobile Development

從零開始-30日練習開發iOS APP系列 第 14

從零開始-30日練習開發iOS APP-Swift UIViewController 生命週期 Day-14

Circle of Life

  1. loadView 畫面載入時
  2. viewDidLoad 畫面載入完成時
  3. viewWillAppear 畫面顯示前
  4. viewDidAppear 畫面顯示後
  5. viewWillDisappear 畫面消失前
  6. viewDidDisappear 畫面消失後

1.loadView 畫面載入時
此方法是使用code創建一個View Controller,如果View Controller是從xibstoryboard產生的話,此階段不適合做任何事情。

override func loadView() {
    super.loadView()
    // code
}

2.viewDidLoad 畫面載入完成時
當 view 被載入到記憶體後,畫面未被顯示之前,就會呼叫 viewDidLoad
通常會使用 override 這方法來增加對 view 的初始化。

override func viewDidLoad() {
    super.viewDidLoad()
    // code
}

3.viewWillAppear 畫面顯示前
當 view 將呈現在畫面上,且還沒有任何的動畫開始出現在畫面上時會呼叫 viewWillAppear
可以 override 這個方法來執行與 view 關聯的自定義任務。

override func viewWillAppear(_ animated: Bool) {
    // code
}

4.viewDidApear 畫面顯示後
在 viewWillAppear 結束後,即 view 被載入後到 View Controller 後,就會載入這個方法
可以透過 override 來增加任務到已經呈現的 view。

override func viewDidAppear(_ animated: Bool) {
    // code
}

5.viewWillDisappear 畫面消失前
當 view 將被移除,且動畫開始執行前呼叫 viewWillDisappear
可以透過 override 來改變 view 的各種狀態

override func viewWillDisappear(_ animated: Bool) {
    // code
}

6.viewDidDisappear 畫面消失後
當 view 被移除後
可以使用 viewDidDisappear 這個方法來執行這時刻的自定義任務。

override func viewDidDisappear(_ animated: Bool) {
    //code
}

上一篇
從零開始-30日練習開發iOS APP-正則表示式 Day-13
下一篇
從零開始-30日練習開發iOS APP-模組化 Day-15
系列文
從零開始-30日練習開發iOS APP30

尚未有邦友留言

立即登入留言