[英]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.