我有 6 个 UILabel 作为 IBOutlet,名为 tutorialLabel1、tutorialLabel2 等...我想使用循环将它们全部放在前面。这是我的代码:
var tempLabel = "tutorialLabel"
for var i=1; i<=6; i++ {
tempLabel = "tutorialLabel" + String(i)
self.tempLabel.bringSubviewToFront(self.tempLabel)
}
但是返回错误
tempLabel is not a member of view.
我想我需要在这里使用 valueForKey 函数,但不确定如何在 Swift 中实现它。你能帮我写那行代码吗?
最佳答案
您可以使用 IBOutletCollection,而不是尝试动态创建引用标签的名称:
@IBOutlet var viewsToBringToFront: [UIView]!
您可以将所有想要放在前面的 View 连接到该集合,然后简单地循环它以将它们放在前面:
for view in viewsToBringToFront {
view.superview?.bringSubviewToFront(view)
}
关于ios - 如何将变量的值用作 UILabel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26847830/