这不是问题,但是我发现UIButton.setTitle
并未将UIButton.titleLabel.text
设置为""
。因此,如果要将UIButton.titleLabel.text
设置为""
,则应在UIButton.titleLabel.text = ""
之后使用UIButton.setTitle("", for: .normal)
。
在操场上,它看起来像:
import UIKit
let button = UIButton()
button.setTitle("1", for: .normal)
print(button.titleLabel?.text ?? "no value")
//print 1
button.setTitle("2", for: .normal)
print(button.titleLabel?.text ?? "no value")
//print 2
button.setTitle("3", for: .normal)
print(button.titleLabel?.text ?? "no value")
//print 3
button.setTitle("", for: .normal)
print(button.titleLabel?.text ?? "no value")
//print 3 not ""
button.titleLabel?.text = ""
print(button.titleLabel?.text ?? "no value")
//print ""
但是,当然button.titleLabel?.text = ""
仅在button.setTitle("", for: .normal)
之后才起作用
button.setTitle("3", for: .normal)
button.titleLabel?.text = ""
print(button.titleLabel?.text ?? "no value")
//print 3
我不明白为什么这样做会如此。也许有人可以解释为什么?