UIButton做着不同的任务

时间:2015-06-17 21:57:27

标签: swift uibutton

如何让UIButton每次在swift中按下时都会做一些不同的事情。我已经尝试制作两个重叠的按钮,一个点击它时隐藏但是不起作用。

编辑:没关系,我发现我可以用静音/播放按钮

If backgroundaudio.play

Backgroundaudio.pause 其他 Backgroundaudio.play

3 个答案:

答案 0 :(得分:0)

您可以通过两种不同的方式完成这项工作:

更改按钮的目标:

添加目标:

button.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)

删除目标:

button.removeTarget(nil, action: nil, forControlEvents: .AllEvents)

或在您的操作函数中包含逻辑语句:

button.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)

func buttonAction(sender: UIButton!)
{ 
     //your conditions go here
}

答案 1 :(得分:0)

例如:每隔一段时间做一些事情你可以写:

func oneThing() {
    // Do your stuff
}

func otherThing() {
    // Do other stuff
}

var shouldDoOtherThing = false

@IBAction func clicked(sender: UIButton) {
    if shouldDoOtherThing {
        otherThing()
    } else {
        oneThing()
    }
    shouldDoOtherThing = !shouldDoOtherThing
}

您也可以在if语句中执行您想要执行的操作,例如

var shouldDoOtherThing = false

@IBAction func clicked(sender: UIButton) {
    if shouldDoOtherThing {
        // Do other stuff
    } else {
        // Do your stuff
    }
    shouldDoOtherThing = !shouldDoOtherThing
}

或者你可以使用其他任何改变代码应该执行的东西(它们被称为控制语句)

答案 2 :(得分:0)

我刚测试了这个。你只需要一个按钮。你可以根据需要随意做任何事情

@IBAction func button_click(sender: AnyObject) {

    var randomNumber = Int(arc4random_uniform(5) + 1) // generates random number 1 - 5

    println(randomNumber)

    switch randomNumber { // perform method depending on what random number was generated

    case 1 :
        funcOne() // Run this method
        println("Pressed 1")

    case 2:
        funcTwo() // Runs this method
        println("Pressed 2")

    case 3:
        funcThree() // Runs this method
        println("Pressed 3")

    case 4:
        funcFour() // Runs this method
        println("Pressed 4")

    case 5:
        funcFive() // Runs this method
        println("Pressed 5")

    default:
        println("do nothing")
    }  
}