我有一个变量@IBOutlet var ImageViews: [UIImageView]!
,可以从故事板中保存我的36个UIImages。我已将标签设置为一个随机图像;
ImageViews[5].tag = 5
我希望能够仅通过标签找到此图像并更改其背景颜色。
(带有标记5的ImageViews中的图像)
HERE'S THE CODE IN C#也许你可以翻译它?我不能。
答案 0 :(得分:4)
let imageView = ImageViews.filter { $0.tag == 5 }.first
imageView?.backgroundColor = UIColor.redColor()
答案 1 :(得分:1)
试试这个:
extension UIView {
func findSubview(withTag tag: Int) -> UIView? {
for subview in self.subviews {
if subview.tag == tag {
return subview
}
}
return nil
}
}
它会像这样使用:
imageView.findSubview(withTag: 5)!
答案 2 :(得分:0)
extension Array where Element: UIView {
func viewWithTag(tag: Int) -> UIView? {
return filter { $0.tag == tag }.first
}
}
let subview = ImageViews.viewWithTag(5)
注意:对类,方法,变量等使用驼峰大小写。 https://github.com/raywenderlich/swift-style-guide