如何比较数组中的UIImages



我正在制作一个应用程序,在该应用程序中,能够比较一个数组/集合内的值会很好。

假设我有一个常量和一个类似的数组:

let blueImage = UIImage(named: "blue")
let redImage = UIImage(named: "red")
button.setImage(blueImage, forState: .Normal)
button2.setImage(redImage, forState: .Normal)
button3.setImage(blueImage, forState: .Normal)
var imageArray:Array<UIImage> = [button.currentImage, button2.currentImage, button3.currentImage]

然后可以检查/比较我的数组中的值并用蓝色图像替换红色图像吗。

更具体地说,有一种方法我可以检查阵列中2/3的图像是否包含特定图像(blueImage),然后用(blueImage)替换最后一个值(redImage),以便所有图像都具有相同的图片。

我想你可以用下面的东西来过滤数组:

let filteredArray = filter(imageArray) { $0 == blueImage }

然后进行计数。

您还可以迭代您的数组:

let countBlue = 0
for i in 0..<imageArray.count {
    if imageArray[i] == blueImage {
        countBlue ++
    }
}

更换元件:

imageArray[2] = blueImage

最新更新