use*_*883 4 uicolor color-space ios swift
我正在尝试从rgb-hex色彩空间实现CIColor,如下所示:
let bottomColor = UIColor.init(red: 235/255, green: 250/255, blue: 255/255, alpha: 1.0).ciColor
Run Code Online (Sandbox Code Playgroud)
但是,我继续遇到以下错误:
由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:'***-CIColor未定义为UIColor UIExtendedSRGBColorSpace 0.921569 0.980392 1 1; 需要先转换颜色空间.
我不确定这意味着什么.如何解决这个问题?
Mic*_*ann 14
这将工作:
let uiColor = UIColor.init(red: 235.0/255.0, green: 250.0/255.0, blue: 255.0/255.0, alpha: 1.0)
let bottomColor = CIColor(color: uiColor)
Run Code Online (Sandbox Code Playgroud)
您还可以在UIColor上添加扩展名:
extension UIColor {
var coreImageColor: CIColor {
return CIColor(color: self)
}
var components: (red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat) {
let color = coreImageColor
return (color.red, color.green, color.blue, color.alpha)
}
}
Run Code Online (Sandbox Code Playgroud)
然后通过以下方式调用它:
let bottomColor = UIColor.init(red: 235.0/255.0, green: 250.0/255.0, blue: 255.0/255.0, alpha: 1.0).coreImageColor
Run Code Online (Sandbox Code Playgroud)
我在这个相关问题中找到的答案和解释.
| 归档时间: |
|
| 查看次数: |
3364 次 |
| 最近记录: |