如何将String变量分配给iOS中的Label或TextField

时间:2018-03-08 06:58:41

标签: ios swift string

print(mess)函数调用viewDidLoad时,它会打印控制台中的预期内容,但是当它分配给UITextFieldUILabel时,则分配的值未反映在UITextFieldUILabel中。这是为什么?

这样做:

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)


}

2 个答案:

答案 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值更改