我正在尝试使用Apple的内置颜色(UIColor.label
,UIColor.secondaryLabel
等),但我似乎找不到与它们相同的Color
。由于无法将它们用作Color
,因此无法在SwiftUI代码中使用它们。有什么方法可以在SwiftUI中使用这些颜色?
答案 0 :(得分:2)
我能够修改找到的here的一些代码来解决。不是世界上最好的解决方案,但它似乎可以工作。
extension Color {
static var label = Color.from(uicolor: .label)
static func from(uicolor: UIColor) -> Color {
var red: CGFloat = 0
var green: CGFloat = 0
var blue: CGFloat = 0
var alpha: CGFloat = 0
uicolor.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
return Color(red: Double(red), green: Double(green), blue: Double(blue)).opacity(Double(alpha))
}
}
用法:
Text("Test").color(.label)