如何在xcode中单击它时更改按钮标识符

时间:2015-05-11 01:43:41

标签: xcode swift

我是Xcode的新手,我正在使用Swift编写秒表。 我有三个功能 - Play,Stop&暂停。播放和暂停应该是相同的按钮,并在状态之间交替。如何在代码中完成此操作?

2 个答案:

答案 0 :(得分:0)

使用按钮状态的枚举

enum ButtonType {
    case Stop
    case Play
    case Pause
}
var btnType: ButtonType = .Stop

@IBOutlet weak var actionBtn: UIButton!
@IBAction func buttonClicked(sender: UIButton)  {
switch (self.btnType) {
    case .Stop:
        self.btnType = .Play
        // TODO: Change button image/title for current state
        break
    case .Play:
        self.btnType = .Pause
        // TODO:
        break

    case .Pause:
        // TODO:
        break
    }
}

答案 1 :(得分:0)

您可以使用所选属性按钮 像这样:

viewDidLoad中设置按钮状态:

startButton.setTitle("Stop", forState: UIControlState.Selected)
startButton.setTitle("start", forState: UIControlState.Normal)

现在,您可以在点按时更改按钮状态:

@IBAction func startPauseAction(sender: UIButton) {
   sender.selected = !sender.selected // action changed the selected 
   if sender.selected {
     play()
   } else {
     pause()
 }
}