如何为随机数分配标签(Swift)

时间:2017-11-12 10:04:44

标签: arrays swift

我有49个标签(从a1到g7),我想随机选择其中一个。我设置了一个数组

let array = [a1, a2, ...., g6, g7]

然后选择随机标签的功能

let RandomGen = Int(arc4random_uniform(UInt32(array.count)))   

一旦我选择了随机标签,我该如何操作呢? 我想改变它的背景颜色,但是如果我写的话

RandomGen.backgroundColor = UIColor.green  

它显示了这个编译错误类型' String'的值没有会员' backgroundColor',因为当然RandomGen是变量,而不是标签。
我该如何解决?

谢谢。

2 个答案:

答案 0 :(得分:1)

RandomGen0array.count 之间的数字(从0array.count - 1。您需要使用它来从array获取标签,然后更改其背景颜色:

array[RandomGen].backgroundColor = .green

答案 1 :(得分:0)

生成(声明)获取标签的随机索引后:

let randomElementIndex = Int(arc4random_uniform(UInt32(array.count)))

您可以按如下方式使用它:

let myRandomLabel = array[randomElementIndex]

假设myRandomLabel是UILabel(因为array是UILabel数组),您可以为其指定所需的背景颜色:

// for instance:
myRandomLabel.backgroundColor = UIColor.black

请注意实施:

RandomGen.backgroundColor = UIColor.green

非常错误RandomGen Int ,应该代表随机索引,而不是标签本身。