寻找使用函数来检查“数字”并返回正确的UIImageView的方法,而不是必须创建一个long if语句。这是我目前使用的代码:
randNumber = Int(arc4random_uniform(UInt32(array.count)))
if number == 1{
image1.image = UIImage(named: array[randNumber])
number += 1
} else if number == 2{
image2.image = UIImage(named: array[randNumber])
number += 1
} else if number == 3{
image3.image = UIImage(named: array[randNumber])
number += 1
} else if number == 4{
image4.image = UIImage(named: array[randNumber])
number += 1
}
如果数字为3,则返回image3
有人有任何建议吗?
答案 0 :(得分:1)
这是一种缩短代码的方法。
从图片视图中制作一个数组:
let imageViewArray = [image1, image2, image3, image4]
生成随机数:
randNumber = Int(arc4random_uniform(UInt32(array.count)))
这就是魔术。由于number
的值与您要使用的图像视图之间的对应关系如下:
number ImageView
1 image1
2 image2
3 image3
4 image4
和数组的索引'与图像视图的对应关系如下:
index ImageView
0 image1
1 image2
2 image3
3 image4
我们只需要从number
中减去一个,使其与数组索引匹配。这意味着我们可以使用此表达式来访问我们想要的图像视图:
imageViewArray[number - 1]
整行将是这样的:
imageViewArray[number - 1].image = UIImage(named: array[randNumber])