如何使用可变的图像名称更改按钮的图像?

时间:2019-01-12 11:12:04

标签: ios swift imagebutton

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

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

但是现在我想使用变量imagename。有什么办法吗?最后,我有一个图像文件夹,然后我使用一个功能来收集图像。函数的最后一行是我将imagename设置为所收集图像的名称。我知道如何编写此函数。但是我不知道如何使用变量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
}

1 个答案:

答案 0 :(得分:0)

由于有一个元素数组,因此可以通过指定其索引来获取某些元素

array[index]
       ^ Int

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


因此,在cellForRowAt中,您可以通过从数组上与当前索引路径的行相等的索引中获取图像来获取某些UIImage?。别忘了拆包

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