[英]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
您可以在 Swift 3 中將其縮減為一行:
avLayer.backgroundColor = UIColor.red.CGColor
在 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]];
也許您只需要設置borderWidth
,默認情況下它是 0,所以它不可見:
self.layer.borderWidth = 1.0
以防萬一你可以設置cornerRadius
如果你需要它圓角......可能會有用;-)
self.layer.cornerRadius = 4.0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.