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