我正在尝试在 Catalyst 应用程序中重新创建与 iOS 上的设置应用程序相同的外观和感觉。
我得到了一个 SplitViewController,其中一个 TableViewController 设置为 Grouped as Master,一个 TableViewController 设置为 Inset Grouped as Detail。
对于表格 View ,我将背景颜色设置为系统分组背景颜色,对于表格 View 单元格,我将背景颜色设置为辅助系统分组背景颜色。
除了 Mac 上的灯光模式外,所有设备(iOS/Mac)上的一切看起来都符合预期。看起来颜色是颠倒的。 Table View 应该有浅灰色背景色,Table View Cell 应该有白色背景色,但反过来。
这是默认的 Mac 行为还是有问题?
我在 GitHub 上创建了一个示例项目:
https://github.com/robertveringa89/systemgroupedbackgroundcolor
最佳答案
似乎是 macOS 上的错误或预期行为。我猜这是一个错误。但是您可以在 UIColor 扩展中使用正确的颜色轻松定义自己的颜色:
extension UIColor {
static var systemGroupedBackground2: UIColor {
UITraitCollection.current.userInterfaceStyle == .light ?
UIColor(hex: "F2F2F7FF") :
UIColor(hex: "000000FF")
}
static var secondarySystemGroupedBackground2: UIColor {
UITraitCollection.current.userInterfaceStyle == .light ?
UIColor(hex: "FFFFFFFF") :
UIColor(hex: "1C1C1EFF")
}
}
关于swift - Mac Catalyst 上的系统分组背景颜色对于 Light Mode 不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60636282/