为什么我不能在 viewDidLoad() 中访问 NSTextField 对象

Why can't I access an NSTextField object within viewDidLoad()

为什么我会收到 "Unexpectedly found nil while unwrapping an Optional value" 错误,提示如果我在 viewDidLoad() 期间尝试更新 NSTextField 对象 (text1) 不存在13=] class?

class SplitViewController: NSSplitViewController {

@IBOutlet weak var text1: NSTextField!

override func viewDidLoad() {

        super.viewDidLoad()
        text1.stringValue = "View loaded OK"
    }


    @IBAction func buttonPress(_ sender: NSButton) {

        text1.stringValue = "Button was pressed"
    }
}

如果我从 viewDidLoad() 函数中注释掉 text1.stringValue = "View loaded OK" 行,那么它运行正常,我可以使用链接到视图上按钮的 @IBAction 访问该对象 - 所以连接正常。

摘自 .

在这种情况下,您需要打开 NSTextField 包装 text1