如何更改具有可变图像名称的按钮图像?
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)
我想以编程方式更改按钮的图像。我现在唯一的办法是:
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)