是否想通过快速单击按钮之一来更改按钮标题?

时间:2019-07-05 07:26:27

标签: swift uibutton

我有四个带有标签“ 1”,“ 2”,“ 3”和“ 4”的按钮。当我单击任一按钮时,我想更改所有按钮的标题。我的代码是-

@IBAction func answerButtonAction(_ sender: UIButton) {                

    if answerButton.tag == 1 {

    answerButton.setTitle(questionBank.list[questionNumber].answer1, 
    for: .normal)
    } else if answerButton.tag == 2 {

    answerButton.setTitle(questionBank.list[questionNumber].answer2, 
    for: .normal)
    } else if answerButton.tag == 3 {

  answerButton.setTitle(questionBank.list[questionNumber].answer3, 
  for: .normal)
    } else {

  answerButton.setTitle(questionBank.list[questionNumber].answer4, 
  for: .normal)   
    }
}

但是我的代码不起作用

2 个答案:

答案 0 :(得分:0)

您可以创建@IBOutlet集合,例如:

@IBOutlet private var buttons: [UIButton]!

然后在您的函数中:

@IBAction func answerButtonAction(_ sender: UIButton) {  

    let answers = [que.answer1, que.answer2, ...]

    zip(buttons, answers).forEach { (button, answer) in
        button.setTitle(answer, for: .normal)
    }              
}

答案 1 :(得分:-1)

//设置UIButton标题

让按钮= UIButton()

button.setTitle(“我的惊人按钮”,代表:.normal)

请尝试这个。

这里也有类似的线程,希望这会有所帮助:

Changing text of UIButton programmatically swift