我在xib文件中设计了一个自定义UIView
。
此自定义UIView
包含多个标签。
我有一个Swift类,其确切名称被设置为此xib文件的所有者。我已使用IBOutlets将标签连接到文件的所有者类。
文件的所有者代码如下所示。 contentView插座是我的自定义视图的父视图的插座。
class MyView: UIView {
@IBOutlet weak var seatsLabel: UILabel!
@IBOutlet var contentView: UIView!
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
initSubviews()
}
func initSubviews() {
let nib = UINib(nibName: "MyView", bundle: nil)
nib.instantiateWithOwner(self, options: nil)
contentView.frame = bounds
addSubview(contentView)
}
func updateView() {
//...
self.seatsLabel.text = "10 seats"
//nothing happens here, even if I do this operation on the main queue
}
}
相应的视图确实显示默认值。但是当我想要改变一些东西时,它却没有反应。我猜这些网点不知何故被破坏了。我通过拖动UIView并将ints类设置为MyView
,在故事板文件中使用了此视图。有人能告诉我在代码中需要更改的内容,以便我可以更改标签的文本吗?我还不太明白如何处理xib文件。