我想知道,插座上的didSet何时/如何实际触发?
例如:
@IBOutlet weak var modifyButton: UIButton! {
didSet {
modifyButton.layer.cornerRadius = 9
}
}
答案 0 :(得分:3)
当初始化类时,Outlet属性初始化为nil。稍后,当从nib初始化对象时,它们将具有值。第一步,当您可以确定所有正确配置的出口属性的nonnil值为viewDidLoad
时。因此,didSet
将在viewDidLoad
之前调用此属性的prepareForSegue
观察者。因为所有这些都需要小心插座属性:例如,如果您尝试使用.hover {
background-image: url("https://cdn4.iconfinder.com/data/icons/ionicons/512/icon-image-128.png");
height:75px;
width:75px;
background-size: contain;
opacity:0.7;
display: none;
position: absolute;
top : 0;
left: 0;
}
img:hover ~ .hover {
display:block;
}
方法访问它们,您将收到nil