在 swift 中重新滚动一个随机数
re-rolling a random number in swift
因此,在 swift 中工作时,我在 viewController 中创建了一个视图,当我在同一个 ViewController 中点击另一个视图时,它会生成一个值为 [=] 的数组12=]
[arc4random_uniform(257), arc4random_uniform(257), arc4random_uniform(257)]
其中随机数是随机 RBG 颜色的参数,我只是让它起作用了。我想要这样,每次用户(或我 ;_;)使用点击手势识别器点击视图时,它都会生成另一种随机颜色。我真的不知道如何 "re-roll" 数组,以便它生成另一种随机颜色。
如果您只想获得一个随机 UIColor
,您可以创建一个函数,它会在您每次触摸识别器时被调用。另外,正如评论中提到的 mattt,您应该将最大值从 257
更改为 256
。
func randomColorCreator()->UIColor{
var red:CGFloat = CGFloat(arc4random_uniform(256))/CGFloat(255)
var green:CGFloat = CGFloat(arc4random_uniform(256))/CGFloat(255)
var blue:CGFloat = CGFloat(arc4random_uniform(256))/CGFloat(255)
return UIColor(red: red, green: green, blue: blue, alpha: 1.0)
}
如果你真的想得到三个颜色值,你可以return三个值像这样:
func randomColorCreatorV2()->(red:Int, green:Int, blue:Int){
var red: = arc4random_uniform(256)
var green: = arc4random_uniform(256)
var blue: = arc4random_uniform(256)
return (red, green, blue)
}
您可以访问 TapGestureRecognizer
方法中的值:
var randomColors = randomColorCreatorV2()
var blueValue = randomColors.blue
因此,在 swift 中工作时,我在 viewController 中创建了一个视图,当我在同一个 ViewController 中点击另一个视图时,它会生成一个值为 [=] 的数组12=]
[arc4random_uniform(257), arc4random_uniform(257), arc4random_uniform(257)]
其中随机数是随机 RBG 颜色的参数,我只是让它起作用了。我想要这样,每次用户(或我 ;_;)使用点击手势识别器点击视图时,它都会生成另一种随机颜色。我真的不知道如何 "re-roll" 数组,以便它生成另一种随机颜色。
如果您只想获得一个随机 UIColor
,您可以创建一个函数,它会在您每次触摸识别器时被调用。另外,正如评论中提到的 mattt,您应该将最大值从 257
更改为 256
。
func randomColorCreator()->UIColor{
var red:CGFloat = CGFloat(arc4random_uniform(256))/CGFloat(255)
var green:CGFloat = CGFloat(arc4random_uniform(256))/CGFloat(255)
var blue:CGFloat = CGFloat(arc4random_uniform(256))/CGFloat(255)
return UIColor(red: red, green: green, blue: blue, alpha: 1.0)
}
如果你真的想得到三个颜色值,你可以return三个值像这样:
func randomColorCreatorV2()->(red:Int, green:Int, blue:Int){
var red: = arc4random_uniform(256)
var green: = arc4random_uniform(256)
var blue: = arc4random_uniform(256)
return (red, green, blue)
}
您可以访问 TapGestureRecognizer
方法中的值:
var randomColors = randomColorCreatorV2()
var blueValue = randomColors.blue