从print(mess)
函数调用viewDidLoad
时,它会打印控制台中的预期内容,但是当它分配给UITextField
或UILabel
时,则分配的值未反映在UITextField
或UILabel
中。这是为什么?
这样做:
var mess: String = ""
override func viewDidLoad()
{
super.viewDidLoad()
self.infoLabel.text = mess //label not getting updated
print(mess) //printing the required output in console
}
但是,当我这样做时,它正常工作
override func viewDidLoad()
{
super.viewDidLoad()
let date = DATE()
let calendar = Calendar.current
let minutes = calendar.component(.minutes, from: date)
temp.text = String(minutes)
}
答案 0 :(得分:0)
首先为mess变量赋值然后更新UITextField值。
在viewDidLoad
中为UITextField分配值时,其默认值为""
。
var mess: String = ""
override func viewDidLoad()
{
super.viewDidLoad()
mess = "123"
self.infoLabel.text = mess //label not getting updated
print(mess) //printing the required output in console
}
答案 1 :(得分:0)
您可以使用UILabel
didSet
值
var mess:String = "" {
didSet {
setupLabel()
}
}
func setupLabel() {
self.infoLabel.text = mass
}
每当混乱值自动更改infoLabel
值更改