SwiftUI 列表背景的默认颜色是什么?

Lem*_*mon 7 swiftui swiftui-list

我知道如何更改 SwiftUI 视图列表的背景颜色,但我找不到默认颜色。我尝试过使用 MacOS 的“数字色度计”,但它无法正确识别颜色。

正如您在此图中看到的,我尝试设置列表行的背景颜色(.listRowBackground根据数字色度计的值使用与周围列表完全相同的背景颜色。

有人真的知道默认背景颜色实际上是什么吗?

图像

mal*_*low 7

简短的回答:看起来像是 UIColor.secondarySystemBackground

长答案:

我和你一样尝试过数字色度计应用程序。它显示 RGB 值:242、242、247。

我创建了这样的颜色: 在此输入图像描述

这是我的代码:

import SwiftUI

extension Color {
    public static let ListBGColor = Color("ListBGColor")
}

struct ContentView: View {
    var body: some View {
        List {
                ForEach(0..<5) {_ in
                    Text("Hello, world!")
                        .padding()
                }
                .listRowBackground(Color.ListBGColor)
        }
        .listStyle(InsetGroupedListStyle())
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}
Run Code Online (Sandbox Code Playgroud)

结果:与背景颜色相同(模拟器和 iPhone 上的睾丸): 在此输入图像描述


Mar*_*ens 7

经过一些测试,看起来可能是这样UIColor.secondarySystemGroupedBackground

例子

默认

不设置辅助系统颜色

使用 UIColor.secondarySystemGroupedBackground

我用它来设置列表行背景: .listRowBackground(Color(UIColor.secondarySystemGroupedBackground))

使用辅助系统颜色