我正在尝试使用RGB
创建自定义CGColor
swift
,以用作UIButton
的边框颜色。我尝试过代码,但颜色不可见:
var red = UIColor(red: 100.0, green: 130.0, blue: 230.0, alpha: 1.0)
self.layer.borderColor = red.CGColor
有没有办法直接从RGB值创建CGColor
?
答案 0 :(得分:64)
您必须提供0到1.0之间的值。因此,将RGB值除以255。
将您的代码更改为
var red = UIColor(red: 100.0/255.0, green: 130.0/255.0, blue: 230.0/255.0, alpha: 1.0)
self.layer.borderColor = red.CGColor
答案 1 :(得分:6)
在Mac OS X上有CGColorCreateGenericRGB()
,但它在iOS上并不存在。但是,您可以将CGColorCreate
与适当的参数一起使用。
self.layer.borderColor = CGColorCreate(CGColorSpaceCreateDeviceRGB(), [1.0, 0.5, 0.5, 1.0])
数组中的值按照外观顺序排列:红色,绿色,蓝色和alpha。就像UIColor
:)
答案 2 :(得分:5)
你可以在Swift 3中找到一行:
avLayer.backgroundColor = UIColor.red.CGColor
答案 3 :(得分:1)
UImage *newImage = [self imageWithColor:[UIColor colorWithRed:200/255. green:228/255. blue:194/255. alpha:0.99]];
答案 4 :(得分:0)
也许您只需要设置borderWidth
,默认情况下它是0,因此它不可见:
self.layer.borderWidth = 1.0
万一你可以设置cornerRadius
如果你需要它四舍五入...可能有用; - )
self.layer.cornerRadius = 4.0