ios - 如何确定当前设备是否具有支持 P3 的显示器?
问题描述
如果设备支持,有没有办法有条件地选择标准 RGB 颜色或 P3 颜色?
对于 iOS 版本,我想到了类似以下内容:
if #available(iOS 12.0, *) {
...
} else {
...
}
解决方案
UITraitCollection
有一个displayGamut
属性,它是enum UIDisplayGamut
@available(iOS 10.0, *)
public enum UIDisplayGamut : Int {
case unspecified // UIKit will not set this anymore, instead a sensible default is chosen based on the device capabilities and settings always
case SRGB
case P3
}
可以查询“主屏”</p>
let hasP3Display = UIScreen.main.traitCollection.displayGamut == .P3
或特定视图的显示(如果使用外部监视器,可能会有所不同)
let hasP3Display = view.traitCollection.displayGamut == .P3
推荐阅读
- racket - 为什么 #:fallbacks 中的代码不能引用泛型方法?
- java - 从firebase中删除孩子后应用程序崩溃
- javascript - \r\n 在 API 结果中 - 如何摆脱它
- r - 绘制链接到辅助 y 轴的折线图
- c# - 如何在 Xamarin 项目中重用 asp.net core dll?
- google-calendar-api - 412 通过带有 if-match 的 API 将与会者添加到重复的谷歌日历事件
- react-native - Undefined 不是函数 - 评估 require.getModules() || 反应原生 || 内联要求 || 启用解绑
- sql - sql:选择两列值的行
- c# - 从另一个类更改文本框
- python - 增强拓扑(NEAT)神经网络的神经进化可以在 TensorFlow 中构建吗?