如何对具有相似名称的输出执行相同的方法,而不是将非常相似的行写10次



我有这些出口…

@IBOutlet weak var pill1: UIImageView!
@IBOutlet weak var pill2: UIImageView!
@IBOutlet weak var pill3: UIImageView!
@IBOutlet weak var pill4: UIImageView!
@IBOutlet weak var pill5: UIImageView!
@IBOutlet weak var pill6: UIImageView!
@IBOutlet weak var pill7: UIImageView!
@IBOutlet weak var pill8: UIImageView!
@IBOutlet weak var pill9: UIImageView!
@IBOutlet weak var pill10: UIImageView!

我需要隐藏所有他们在'viewDidLoad'函数。例如…

self.pill1.isHidden = true
self.pill2.isHidden = true
self.pill3.isHidden = true
etc... 
etc....all the way to...
self.pill10.isHidden = true

但是,与其写重复的10次非常相似的行,我如何使用'for循环',或者其他需要的东西,使它更干净。

例如,

for index in 1...10 {
   pill(insert index here somehow).isHidden = true
}

我尝试了几种不同的方法,但我得到错误与字符串类型等。我对这一切都很陌生。感谢任何帮助。谢谢你

您可以将视图放入如下数组中:

for pill in [pill1, pill2, pill3, pill4, pill5, pill6, pill7, pill8, pill9, pill10] {
    pill.isHidden = true
}

您可以考虑使用@IBOutlet集合。在这种情况下,所有输出都将连接到相同的集合(数组)变量:

@IBOutlet var pills: [UIImageView]!
for pill in pills {
    pill.isHidden = true
}

最新更新