2

我想知道,插座上的 didSet 何时/如何实际触发?

例如 :

   @IBOutlet weak var modifyButton: UIButton! {
    didSet {
        modifyButton.layer.cornerRadius = 9
    }
}
4

1 回答 1

7

当类刚刚初始化时,插座属性初始化为 nil。稍后,当对象将从 nib 初始化时,它们将具有值。第一步,当您可以确定所有正确配置的插座属性都具有非零值时viewDidLoad。所以,didSet这个属性的观察者将在之前被调用viewDidLoad。因为所有这些你都需要小心出口属性:例如,如果你尝试在prepareForSegue方法中访问它们,你将收到 nil

于 2016-07-05T08:15:27.413 回答