在外部函数中为cgfill设置随机颜色

时间:2015-05-12 19:56:53

标签: swift random colors

我有一个矩形,我想用随机颜色填充它。

返回随机颜色的功能应该是单独的。

这是我的想法,但它没有成功,我认为因为类型?我需要用指针做这个吗?

func getRandomColor() -> CGColorRef {
    let color = CGColorCreate(CGColorSpaceCreateDeviceRGB(), [1.0, 0.5, 0.5, 0.2])
    return color
}


func drawRect {
    // ...
    CGContextSetFillColorwithcolor(context,getRandomColor())
    // ...
}

1 个答案:

答案 0 :(得分:0)

func randomColorComponent() -> CGFloat
{
    return CGFloat(Float(arc4random()) / Float(UINT32_MAX))
}

func randomColorRef() -> CGColorRef
{
    let red = randomColorComponent()
    let green = randomColorComponent()
    let blue = randomColorComponent()
    return UIColor(red: red, green: green, blue: blue, alpha: 1).CGColor
}

然后在drawRect的某个地方使用:

CGContextSetFillColorWithColor(context, randomColorRef())