我不知道为什么我的其他人不会被我的IBAction调用

时间:2016-10-07 23:46:35

标签: ios iphone swift

我创建了一个处理2个按钮的IBAction,第一个标题是“True”,第二个标题是“False”,点击时它们应该显示一个标签,但是如果永远不会被调用,则显示其他标题。

@IBAction func trueOrFalse(sender: UIButton) {
      if sender.currentTitle == "True" {
             answerR.hidden = false
             answerW.hidden = true
      } else if sender.currentTitle == "False" {
                    print("hi")
             answerW.hidden = false
             answerR.hidden = true
      }
 }

answerWanswerR是标签。 我不知道为什么,我尝试了一些像使用水龙头的东西,但我似乎无法弄明白。

3 个答案:

答案 0 :(得分:0)

听起来你的一个按钮没有注册IBAction - 仔细检查并确保每个按钮都通过Touch Up Inside连接。如果它们使用不同的方法连接,则可能无法按预期注册!

答案 1 :(得分:0)

您应该使用按钮标签。它非常简单如下:

首先,您应该设置如下所示的每个按钮标记:

Buton1 Tag = 0 Buton2 Tag = 1

enter image description here

然后使用以下代码:

@IBAction func trueOrFalse(sender: UIButton) {
        if sender.tag == 0 {
            answerR.hidden = false
            answerW.hidden = true
        }else
        {
            print("hi")
            answerW.hidden = false
            answerR.hidden = true
        }
    }

答案 2 :(得分:-3)

你需要消除字符串

附带的可选项
@IBAction func trueOrFalse(sender: UIButton) {
      if (sender.currentTitle!)! == "True" {
             answerR.hidden = false
             answerW.hidden = true
      } else if (sender.currentTitle!)! == "False" {
                    print("hi")
             answerW.hidden = false
             answerR.hidden = true
      }
 }