更新:现在在 Xcode 中可以正常工作 - “Outlet Collection”是 Interface Builder 中的连接选项之一,它创建的内容如下所示:
@IBOutlet var labelCollection: [UILabel]!
在我们等待修复时,您可以使用计算属性来近似此问题。假设我的视图有五个UILabels
我想要的集合。我仍然必须声明每一个,但随后我还声明了一个收集它们的计算属性:
class MyViewController {
@IBOutlet var label1 : UILabel
@IBOutlet var label2 : UILabel
@IBOutlet var label3 : UILabel
@IBOutlet var label4 : UILabel
@IBOutlet var label5 : UILabel
var labels: UILabel![] { return [label1, label2, label3, label4, label5] }
有点烦人,但是从那时起,我们可以将labels
属性视为一个IBOutletCollection
,并且一旦修复了错误,就不必更改其余代码:
override func viewDidLoad() {
super.viewDidLoad()
for (index, item) in enumerate(self.labels) {
item.text = "Label #\(index)"
}
}