按钮作为变量

时间:2018-10-05 08:11:23

标签: swift uibutton

我正在尝试将变量设置为按钮标签。 我有这样的东西:

@IBOutlet weak var myButton: UIButton!

var myVariable = String()

@IBAction func ButtonPressed(_ sender: Any) {
    myVariable = myButton.titleLabel
}

谁能告诉我如何进行这项工作?

2 个答案:

答案 0 :(得分:2)

titleLabelUILabel的实例。您的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
}