iOS10 UIColor增加更灵活的色彩API

1.创建sRGB模式的色彩度

    在iOS10中,UIColor类中新增加了两个方法,用来创建sRGB模式的色彩。与RGB相比,sRGB是更加标准的色彩模式,RGB色彩在不同设备上可能存在颜色偏差,sRGB则更加精准但同时色域范围也更窄一些。UIColor中新添加的方法如下:

//类方法创建sRGB模式色彩

+ (UIColor *)colorWithDisplayP3Red:(CGFloat)displayP3Red green:(CGFloat)green blue:(CGFloat)blue alpha:(CGFloat)alpha NS_AVAILABLE_IOS(10_0);

//初始化方法创建sRGB模式色彩

- (UIColor *)initWithDisplayP3Red:(CGFloat)displayP3Red green:(CGFloat)green blue:(CGFloat)blue alpha:(CGFloat)alpha NS_AVAILABLE_IOS(10_0);

2.全局设置色彩风格

    一般情况下,iOS系统会根据用户所在环境的光线进行屏幕色彩的调节,在iOS10系统中,开发者可以在info.plist文件中全局的配置色彩风格来设置外界光线对APP内色彩的影响程度。

在info.plist文件中可以添加如下键:
White Point Adaptivity Style
这个键可以设置的值列举如下:

UIWhitePointAdaptivityStyleStandard // 标准模式
UIWhitePointAdaptivityStyleReading // 阅读模式
UIWhitePointAdaptivityStylePhoto // 图片模式
UIWhitePointAdaptivityStyleVideo // 视频模式
UIWhitePointAdaptivityStyleStandard // 游戏模式

上面几种模式从上到下,对色彩的保真度依次提高,也就是说如果你的项目是阅读类的,就选择UIWhitePointAdaptivityStyleReading这个模式,五种模式的显示效果是从上往下递减,也就是说如果你的项目是图片处理类的,你选择的是阅读模式,给选择太好的效果会影响性能.

你可能感兴趣的:(iOS10 UIColor增加更灵活的色彩API)