更改 iOS15 中列表的背景颜色

Change background color of lists in iOS15

有了新的 XCode 13 和它的 iOS 15 支持,列表的呈现方式显然发生了变化。 现在 List 有一个额外的灰色背景。之前,背景是纯白色的,就像我希望的那样。当我添加文本等其他元素时,默认背景颜色仍然是白色。

有什么方法可以在不切换到 ForEach() 解决方案的情况下摆脱 List 的灰色包围?

我尝试在不同地方将背景颜色从灰色更改为白色,并添加额外的堆栈以希望覆盖默认背景颜色。

这个我想要全白没有周围的灰色:

struct ContentView: View {
    var body: some View {
        
        VStack {
            Text("Test")
            
            List {
                ForEach(1..<20) { i in
                    Text(String(i))
                }         
            }.frame(maxWidth: .infinity)                
        }       
        
    }
}

listStyle 更改为 .plain。 iOS 14 的默认值是 .plain,iOS 15 的默认值是 .insetGrouped

代码:

struct ContentView: View {
    var body: some View {
        VStack {
            Text("Test")

            List {
                ForEach(1 ..< 20) { i in
                    Text(String(i))
                }
            }
            .listStyle(.plain)
        }
    }
}

结果: