我正在观看有关 UIKit 的 VisionOS 演示,他们强烈建议我们应该使用语义颜色,这样活力才能正常发挥作用。
但是,除了通过像
.foregroundColor(.mint)
这样的中间函数将它们设置在应用程序 SwiftUI 层次结构的根部之外,我从未找到覆盖颜色调色板的正确方法。
但是我似乎无法控制这种方式使用的所有颜色。另外,在 UIKit 中,使用
UIAppearance
代理非常费力,因为您必须分别处理所有类型的视图。
有什么方法可以简单地覆盖调色板本身而不是使用间接样式吗?
如果您构建自己的颜色库/设计系统,那么您可以在应用程序的商业外观中定义自己的语义颜色。然后在整个过程中严格使用
MyCompany.bgPrimary
。第一次转换有点痛苦,但随后您就可以完全控制调色板,每种颜色都在一个位置定义。