如何用特定的配色(系统外观)手动解析NScolor?

问题描述 投票:0回答:1
根据

NScolorDocument,“从资产创建的颜色可以自动适应系统外观更改”。但是,我想在特定的系统外观中手动获得其颜色。例如,如下所示,我在资产目录中创建了一个颜色集。我想在光模式下使用其深色模式颜色,也许还有一些诸如Color

我认为这个问题可以总结为从动态颜色(浅色和深色)中检索NScolor。我知道这可以在以下iOS Uikit中完成,但是我该如何在Macos AppKit中实现? enter image description hereNSColor(named: "Color")!.darkModeVariant

我的团队遇到了同样的问题,我们提出了一个尴尬的解决方案(但看似功能很强)。

extension UIColor {
    var lightModeVariant: UIColor {
        resolvedColor(with: UITraitCollection(userInterfaceStyle: .light))
    }
    var darkModeVariant: UIColor {
        resolvedColor(with: UITraitCollection(userInterfaceStyle: .dark))
    }
}
上使用方便的方法,该方法使我们可以在给定外观的上下文中运行代码,以及一个助手类,以将数据从其闭合之外航行。
swift appkit nscolor
1个回答
0
投票

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.