我正在尝试将变量设置为按钮标签。 我有这样的东西:
@IBOutlet weak var myButton: UIButton!
var myVariable = String()
@IBAction func ButtonPressed(_ sender: Any) {
myVariable = myButton.titleLabel
}
谁能告诉我如何进行这项工作?
答案 0 :(得分:2)
titleLabel
是UILabel
的实例。您的myVariable
是String属性。这与类型不匹配。您可以直接访问titleLabel
,如下所示:
myVariable = myButton.titleLabel?.text ?? ""
但是UIButton
类定义了一种title(for:)
方法来访问各种状态的按钮的标题。
因此,在您的情况下,我建议使用以下内容:
@IBOutlet weak var myButton: UIButton!
var myVariable = String()
@IBAction func ButtonPressed(_ sender: Any) {
myVariable = myButton.title(for: .normal) ?? ""
}
答案 1 :(得分:0)
您快到了,就缺少了text
属性。另外,您可能希望将变量设置为可选变量。
@IBOutlet weak var myButton: UIButton!
var myVariable: String?
@IBAction func ButtonPressed(_ sender: Any) {
myVariable = myButton.titleLabel?.text
}