Swift 使用iAction按钮在多次按下时循环两组不同的指令

Swift 使用iAction按钮在多次按下时循环两组不同的指令,swift,ibaction,Swift,Ibaction,我对编码还不熟悉,一直在努力学习swift的强化课程。现在我正在做一个项目,我希望有一个iAction按钮,在第一次按下时完成指令集1,然后在第二次按下时完成指令集2。然后,按3将返回到“设置1”指令,按4“设置2”等 原谅我,如果这是基本的,但任何帮助将不胜感激 //使用iAction的SET1指令将是 @IBAction func punchInButtonPressed(sender: AnyObject) { statusLabel.text = "Status: Punche

我对编码还不熟悉,一直在努力学习swift的强化课程。现在我正在做一个项目,我希望有一个iAction按钮,在第一次按下时完成指令集1,然后在第二次按下时完成指令集2。然后,按3将返回到“设置1”指令,按4“设置2”等

原谅我,如果这是基本的,但任何帮助将不胜感激

//使用iAction的SET1指令将是

@IBAction func punchInButtonPressed(sender: AnyObject) {

    statusLabel.text = "Status: Punched In"
    statusLabel.backgroundColor = UIColor(red: 96/255.0, green: 191/255.0, blue: 111/255.0, alpha: 1.0)
//第二套指令将是

statusLabel.text = "Status: Punched Out"
statusLabel.backgroundColor = UIColor(red: 255/255.0, green: 110/255.0, blue: 115/255.0, alpha: 1.0)

您可以通过向类中添加一个变量来处理这个问题,该变量将保存按钮的“状态”——穿孔或穿孔。然后,当按下按钮时,切换状态,然后显示正确的消息:

class MyViewController: UIViewController {
    var punchedIn = false
    // rest of declarations

    @IBAction func punchInButtonPressed(sender: AnyObject) {
        // toggle status
        punchedIn = !punchedIn

        // show correct message
        if punchedIn {
            // set 1
            statusLabel.text = "Status: Punched In"
            statusLabel.backgroundColor = UIColor(red: 96/255.0, green: 191/255.0, blue: 111/255.0, alpha: 1.0)
        } else {
            // set 2
            statusLabel.text = "Status: Punched Out"
            statusLabel.backgroundColor = UIColor(red: 255/255.0, green: 110/255.0, blue: 115/255.0, alpha: 1.0)
        }
    }
}