当if / else条件为true时,在true和false块中执行代码

时间:2015-03-17 21:01:28

标签: swift if-statement

发生了一些非常奇怪的事情,我不明白它是如何发生的。我是新手,所以我可能会遗漏一些东西。如果需要,我可以发布更多代码,但无论我做了什么,这怎么可能发生?

    if sender.on {
        txtNumMavericks.hidden = false
    } else {
        txtNumMavericks.hidden = true
    }

在这种情况下,发件人是一个开关。当开关为假时,正如预期的那样,只是块的第二部分运行。但是当它成立时,它会执行顶部和底部语句(使txtNumMavericks出现然后立即消失)。我通过在if语句上面加一个断点来找到这一点,单步执行F6代码。

1 个答案:

答案 0 :(得分:2)

如果您只想切换这些属性,您只需要添加感叹号"!"在实际的财产前面如下:

txtNumMavericks.hidden = !txtNumMavericks.hidden