[英]viewDidLoad() and viewDidAppear() called only once?
這是我的 ViewController(對其他文件沒有更改):
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
print("hi from vdl")
}
override func viewDidAppear(_ animated: Bool) {
print("hi from vda")
}
}
來自vdl的你好
你好來自vda
來自調試器的消息:由於信號 9 而終止
當您在模擬器中關閉應用程序時,您會斷開與調試器的連接。
PS您沒有在viewDidAppear
中調用super
。
viewDidLoad()
和viewDidAppear()
在你進入 VC(ViewController) 時工作,比如 present、push、pop、dismiss。
當一個 VC 被呈現或推送到其他 VC 時, viewDidLoad()
和viewDidAppear()
將起作用。當你彈出/關閉一個 VC 時,前一個 VC 會出現,這使得viewDidAppear()
起作用。
但是移動到主屏幕不會對兩者產生影響。
如果您想知道應用程序何時進入后台,請使用AppDelegate.swift
中的func applicationDidEnterBackground(_ application: UIApplication)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.