如何在按钮上设置IBAction操作

时间:2019-06-16 04:20:15

标签: swift xcode

我希望这样,当有人单击按钮时,它会触发功能X,但之后又会触发功能Y。这应该是前后的。 第一次他们单击按钮A时,触发函数X,第二次,触发函数Y,第三次触发X。我们如何使用swift在代码中而不是在故事板上触发动作?

1 个答案:

答案 0 :(得分:2)

像平常一样将按钮连接到一个动作上

@IBAction func buttonHandler(_ sender: UIButton) {
}

然后添加两个您希望在其中进行交替的功能:

func handlerX() {
    // Do the first set of operations
}

func handlerY() {
    // Do the second set of operations
}

然后将一个属性添加到您的视图控制器中,以跟踪要调用的属性:

var handlerState = true

现在您可以按以下方式更新操作:

@IBAction func buttonHandler(_ sender: UIButton) {
    if handlerState {
        handlerX()
    } else {
        handlerY()
    }
    handlerState = !handlerState
}