我在UILabel
子类中有一个UIViewController
,现在我的代码是这样的:
class ViewController: UIViewController {
@IBOutlet var myLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
myLabel.text = "\(DataModel.varialbleExampleData)"
}
}
但是,这里的variableExampleData是一个变量,并且可能随时间而变化,因此,每当标签更改时如何更新标签?
PS:很抱歉,这个问题听起来很愚蠢或显而易见
答案 0 :(得分:2)
如果视图控制器中有此数据,则可以使用didSet
。因此,每次您设置数据时,它都会更改文本,例如
class ViewController: UIViewController {
@IBOutlet var myLabel: UILabel!
var data: DataModel? {
didSet {
myLabel.text = "\(data.variableExampleData)"
}
}
override func viewDidLoad() {
super.viewDidLoad()
}
}
答案 1 :(得分:0)
每当数据模型更改时,我就使用NotificationCenter
发布Notification
。然后在我的控制器上添加观察者