我们可以使用swift为2个动作制作1个UIButton吗?

时间:2016-08-29 14:24:12

标签: ios swift select uibutton action

我想对这样的按钮进行2次操作。 选择并取消选择1按钮的操作。

BSTRING1,B1TEST_NAME,/shared/dir1/dir2/dir3/dir4
BSTRING2,B1TEST_NAME,/shared/dir1/dir2/dir3/dir4
BSTRING3,B1TEST_NAME,/shared/dir1/dir2/dir3/dir4

我该怎么做?

3 个答案:

答案 0 :(得分:2)

如果你需要分割两个按钮状态 - 比如ON和OFF,试试这个:

var buttonSwitched : Bool = false

@IBAction func btntouch(sender: UIButton) {

    //this line toggle your button status variable
    //if true, it goes to false, and vice versa
    self.buttonSwitched = !self.buttonSwitched

    if self.buttonSwitched
    {
        //your UI styling
    }
    else
    {
        //your opposite UI styling
    }
}

答案 1 :(得分:1)

创建2 IBActions

@IBAction func touchDown(_ sender: AnyObject) {
    print("down")
}

@IBAction func touchUp(_ sender: AnyObject) {
    print("up")
}

连接第一个时,请确保event设置为touchDown。对于第二个,请确保将其设置为touchUpInside

答案 2 :(得分:1)

是的,你可以。根据您的要求,您可以在视图控制器或模型中存储按钮的当前状态。

如果第一次触摸引起的视觉变化需要在视图控制器的打开和关闭过程中保持不变,请存储指示模型中更改的值;如果您需要在视图控制器显示时重置视觉效果,请将值存储在视图控制器本身中:

var firstTouch = true
@IBAction func btntouch(sender: UIButton) {
     if firstTouch  {
         firstTouch = false
         ...
     } else {
         ...
     }
}