如何更改具有可变图像名称的按钮图像?

How to change image of a button with variable image name?

我想以编程方式更改按钮的图像。我现在唯一的办法是:

button.setImage(UIImage.init(named: "imagename", for: .normal))

但现在我想使用一个变量imagename。有什么办法吗?最后我有一个图像文件夹,而不是我使用函数收集图像。该函数的最后一行是我将图像名称设置为采集图像的名称。我知道如何编写这个函数。但我不知道如何使用可变图像名称设置按钮的图像。 我希望你理解我的问题,任何人都可以帮助我。

这里是代码:

 var imageArroy = [UIImage(named:"car1"),UIImage(named:"car2")]

//scrollview
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
    return imageArroy.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {

    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "ImageCollectionViewCell", for: indexPath) as! ImageCollectionViewCell

    var imagename: String = imageArroy[indexPath.row])

    cell.car.setImage(UIImage.init(named: imagename)!, for: .normal)

    return cell
}

因为你有一个元素数组,你可以通过指定它的索引来获取某个元素

array[index]
       ^ Int

...注意第一个元素的索引是0,不是1


因此,在 cellForRowAt 中,您可以通过从索引等于当前索引路径行的数组中获取图像来确定 UIImage?。不要忘记打开它

cell.car.setImage(imageArroy[indexPath.row]!, for: .normal)