以下是我目前处理UI Element Colors
暗模式的方式,并为旧操作系统提供回退。
extension UIColor {
class var mySystemBackground: UIColor {
if #available(iOS 13, *) {
return .systemBackground
} else {
return .white
}
}
}
在这种情况下systemBackground
,知道它何时处于暗模式以及何时处于亮模式并相应地发生变化。我想使用自定义颜色做类似的事情。
例如,我有一个自定义的黄色,我目前在整个应用程序中使用它,我想在黑暗模式下提供不同的颜色。
这是我在想的代码...
extension UIColor{
class var mySystemYellowColor: UIColor {
// default light-color
var myYellow = UIColor(red: 254/255, green: 219/255, blue: 2/255, alpha: 1.0) /* #fedb02 */
if #available(iOS 13.0, *) {
if traitCollection.userInterfaceStyle == .light {
return myYellow
} else {
// color for dark mode in iOS 13.0
myYellow = UIColor(red: 242/255, green: 125/255, blue: 0/255, alpha: 1.0) /* #f27d00 */
}
return myYellow
} else {
return myYellow
}
}
}
这是在 iOS13 中处理暗模式自定义颜色的一种平易近人的方式吗?