如果设备支持,是否可以有条件地选择标准 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
}

您可以查询“主屏幕”
let hasP3Display = UIScreen.main.traitCollection.displayGamut == .P3

或特定 View 的显示(如果使用外部显示器,则可能会有所不同)
let hasP3Display = view.traitCollection.displayGamut == .P3

关于ios - 如何确定当前设备是否具有支持 P3 的显示器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56804278/

10-12 20:55