我想要一个UIButton,当点击以将其标题更改为“ Restart”,而再次点击以将其标题更改为“ Stop”时。这段代码我将Button标题更改为“ Restart”,但是当我再次点击按钮时,什么也没有发生。

-(IBAction)restartPressed{
    if (self.restart){
      [self.restart setTitle:"@Restart" forState:UIControlStateNormal];
    else {
      [self.restart setTitle:"@Stop" forState:UIControlStateSelected];
    }
  }

最佳答案

您可以采用全局布尔变量:

var isButtonClicked = false

@IBAction func restartClicked(_ sender: AnyObject) {

    isButtonClicked = !isButtonClicked
    restartButton.setTitle(isButtonClicked ? "Stop" : "Restart", for: .normal)
}


代码很快。您可以将其转换为目标C

10-08 05:53