ColorCompatibility 1.1.0

ColorCompatibility 1.1.0

Noah Gilmore 维护。



ColorCompatibility

在 iOS 13 中,Apple 引入了许多新的系统颜色(标签、系统背景等)。这些颜色可以动态适应首选的用户界面样式,但在 iOS <13 的设备上这些颜色是不可用的。ColorCompatibility 是一个自动生成的库,它允许你将系统颜色指定为 ColorCompatibility 命名空间中的静态变量,而不是 UIColor。使用它将在 iOS 13+ 和 iOS <= 12 上都使颜色“顺利”工作。在 iOS <= 12 上,颜色默认为 Apple 的浅色模式颜色。

请注意:有些系统颜色(如 systemGraysystemBlue 等)在 iOS 13 之前就已经存在。这个库目前不提供这些颜色的回退方案 - 你可以使用 UIColor 来访问它们。如果你有将这些颜色包含在这个库的枚举中的用例,请随时提交问题。

例如:

import ColorCompatibility

myView.backgroundColor = ColorCompatibility.label

你可以在这里了解更多有关此项目的信息。

Version License Platform

示例

要运行示例项目,请克隆仓库,然后首先从 Example 目录中运行 pod install

要求

安装

CocoaPods

ColorCompatibility可通过CocoaPods获得。安装方法:简单地将以下行添加到您的Podfile中

pod 'ColorCompatibility'

Swift Package Manager

ColorCompatability作为Swift包提供。要安装,请将https://github.com/noahsark769/ColorCompatibility.git添加为Xcode中的包依赖,版本要求>= 1.0.1,或作为另一个包的依赖项

let package = Package(
    dependencies: [
        .package(url: "https://github.com/noahsark769/ColorCompatibility.git", ...)
    ]
)

如果您不想使用CocoaPods或SPM,建议您直接将ColorCompatibility.swift代码复制粘贴到您的项目中。它只有一个文件👍

备注

当您的应用程序不支持iOS 12,并将UIColor替换为ColorCompatibility时,不能保证所有的颜色都以相同方式行为:例如,在iOS 13中,系统颜色在其处于“提升”上下文(如模态显示的视图控制器背景色)时,适应不同的显示。有关提升颜色的更多信息,请参阅黑暗模式人机界面指南

作者

Noah Gilmore,https://noahgilmore.com/blog

许可协议

ColorCompatibility 在 MIT 许可协议下提供。有关更多信息,请参阅 LICENSE 文件。

贡献

如果您发现存在问题,请通过 GitHub 的问题标签进行报告。我们乐于接受 pull requests。您可以在 Twitter 上联系我(https://twitter.com/noahsark769)。请勿提交更新库以包括在 iOS 13 之前就有的颜色(如 systemGraysystemBlue 等)的 pull requests,除非您先在问题中讨论您的用例。

如果您的问题或 pull requests 未得到我的回应,请随时 @noahsark769 或在 Twitter 上提及我!