我使用下面的代码设置视图控制器的背景
view.wantsLayer = true
let myColor = NSColor(calibratedRed: 50, green: 50, blue: 50, alpha: 1.0)
view.layer?.backgroundColor = myColor.cgColor
但是在调试myColor
时,我得到以下颜色而不是预期的颜色
颜色分量的范围(RGBA)在[0,1]之间变化
创建具有指定红色,绿色,蓝色和Alpha的颜色对象渠道价值。此方法接受扩展的颜色分量值。如果红色,绿色,蓝色或alpha值在0-1.0之外范围,
所以您可以获得init(red:green:blue:alpha:)
cgColor
这里是view.layer?.backgroundColor = NSColor(calibratedRed: 50.0/256.0, green: 50.0/256.0, blue: 50.0/256.0, alpha: 1.0).cgColor
。任何大于1的值都被视为1。您需要将每个值除以255。
documentation
也请检查一下-> view.wantsLayer = true
let myColor = NSColor(calibratedRed: 50/255, green: 50/255, blue: 50/255, alpha: 1.0)
view.layer?.backgroundColor = myColor.cgColor