如何从 RGB 值中获取 CGColor?
How can I obtain a CGColor from RGB values?
我正在尝试使用 Swift 创建自定义 RGB CGColor
用作 UIButton
的边框颜色。我尝试了以下代码,但颜色不可见:
var red = UIColor(red: 100.0, green: 130.0, blue: 230.0, alpha: 1.0)
self.layer.borderColor = red.CGColor
有什么方法可以直接从 RGB 值创建 CGColor
吗?
您必须给出 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
也许你只需要设置 borderWidth
,默认情况下它是 0,所以它是不可见的:
self.layer.borderWidth = 1.0
以防万一你可以设置 cornerRadius
如果你需要它......可能有用;-)
self.layer.cornerRadius = 4.0
在 Mac OS X 上有 CGColorCreateGenericRGB()
,但在 iOS 上不存在。不过,您可以使用 CGColorCreate
和适当的参数。
self.layer.borderColor = CGColorCreate(CGColorSpaceCreateDeviceRGB(), [1.0, 0.5, 0.5, 1.0])
数组中的值按出现顺序为:红色、绿色、蓝色和 alpha。就像 UIColor
:)
UImage *newImage = [self imageWithColor:[UIColor colorWithRed:200/255. green:228/255. blue:194/255. alpha:0.99]];
您可以在 Swift 3:
中将其缩减为一行
avLayer.backgroundColor = UIColor.red.CGColor
我正在尝试使用 Swift 创建自定义 RGB CGColor
用作 UIButton
的边框颜色。我尝试了以下代码,但颜色不可见:
var red = UIColor(red: 100.0, green: 130.0, blue: 230.0, alpha: 1.0)
self.layer.borderColor = red.CGColor
有什么方法可以直接从 RGB 值创建 CGColor
吗?
您必须给出 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
也许你只需要设置 borderWidth
,默认情况下它是 0,所以它是不可见的:
self.layer.borderWidth = 1.0
以防万一你可以设置 cornerRadius
如果你需要它......可能有用;-)
self.layer.cornerRadius = 4.0
在 Mac OS X 上有 CGColorCreateGenericRGB()
,但在 iOS 上不存在。不过,您可以使用 CGColorCreate
和适当的参数。
self.layer.borderColor = CGColorCreate(CGColorSpaceCreateDeviceRGB(), [1.0, 0.5, 0.5, 1.0])
数组中的值按出现顺序为:红色、绿色、蓝色和 alpha。就像 UIColor
:)
UImage *newImage = [self imageWithColor:[UIColor colorWithRed:200/255. green:228/255. blue:194/255. alpha:0.99]];
您可以在 Swift 3:
中将其缩减为一行avLayer.backgroundColor = UIColor.red.CGColor