在 iOS、macOS 或 tvOS 上使用来自 SwiftUI 的标准系统颜色。
目前,SwiftUI 没有提供访问标准系统颜色的途径,因此您几乎可以在任何 SwiftUI 项目中找到某种颜色转换(Color(UIColor.label)
)。这个库专注于将所有系统颜色带到 SwiftUI,这样您就不再需要每次都手动编写转换。
与自定义实现或复制粘贴相比,在您的项目中使用 SystemColors
包依赖项的优势:
Color.label
,而不是 iOS 的 UIColor.label
和 macOS 的 NSColor.labelColor
。@available(iOS 13.0, *)
或 #if canImport(UIKit)
,都由该软件包实现并由社区维护 - 减少在一个平台支持中引入错误的可能性。使用 Swift Package Manager 将依赖项添加到您的项目:https://github.com/diniska/swiftui-system-colors
导入依赖项
import SystemColors
以与使用 UIColor
或 NSColor
相同的方式使用 SwiftUI 中的系统颜色
Rectangle()
.background(Color.label)
如果您发现缺少一种或另一种颜色,或者以错误的方式表示,请打开一个 pull request 或一个 issue。
请仅向此软件包添加系统颜色。我们仅提供方便的接口,而不对某些颜色的外观做出决定。例如,如果 macOS 没有提供颜色 systemFill
,我们也不会在 macOS 上提供它,但对于 iOS,它存在,我们会在 iOS 上提供该颜色。
如果您有关于如何更好地测试提供的桥接代码的想法 - 请添加一个包含您的想法描述的 issue 或添加一个包含实现的 pull request。
如果您建议更改软件包,请保持类似的代码风格。当前代码风格具有以下优势: