我想使用按下按钮来切换几个UILabel的隐藏状态。按一下按钮,取消隐藏它们,再次按下标签隐藏,隐藏这些标签的默认状态。
这是我认为可行的(但显然没有):
@IBAction func information(sender: AnyObject, forEvent event: UIEvent)
{
if(infoLocation.hidden = true)
{
self.infoLocation.hidden = false
}
else
{
self.infoLocation.hidden = true
}
//**********************************//
if(infoName.hidden = true)
{
self.infoName.hidden = false
}
else
{
self.infoName.hidden = true
}
//**********************************//
if(infoVersion.hidden = true)
{
self.infoVersion.hidden = false
}
else
{
self.infoVersion.hidden = true
}
}
答案 0 :(得分:12)
为了使代码更短(并且看起来更好),如果只是一个切换,我会这样做:
for label in [label1, label2, label3, label4] {
label.hidden = !label.hidden
}
这将切换label1-4.hidden
答案 1 :(得分:6)
在==
声明中使用if
,而不是=
。
if(infoVersion.hidden == true)
=
用于转让
==
是为了平等。
更新:
您可以使用更快的版本代码来隐藏状态:
infoVersion.hidden = !infoVersion.hidden;
答案 2 :(得分:5)
SWIFT 3.x,4.x
for label in [label1, label2, label3, label4] {
label.isHidden = !label.isHidden
}
答案 3 :(得分:0)
Swift 4.x
label.isHidden = true // or false