SwiftUI如何在iOS 14中禁用列表边框

4
我发现在SwiftUI iOS 14中,如果视图包含NavigationView,列表将会有类似于边框的东西。有没有解决方案可以禁用边框?因为边框破坏了我的应用程序的设计。
下面是不包含任何NavigationView代码的示例代码:
struct ContentView: View {
    @State var isPresent = false
    
    var body: some View {
        let first = Restaurant(name: "Joe's Original")
        let second = Restaurant(name: "The Real Joe's Original")
        let third = Restaurant(name: "Original Joe's")
        let restaurants = [first, second, third]
            VStack{
                List(restaurants) { restaurant in
                    Text(restaurant.name)
                }
            }
        }
    }
}

enter image description here

这里是包含NavigationView的代码

struct ContentView: View {
    @State var isPresent = false
    
    var body: some View {
        let first = Restaurant(name: "Joe's Original")
        let second = Restaurant(name: "The Real Joe's Original")
        let third = Restaurant(name: "Original Joe's")
        let restaurants = [first, second, third]
        NavigationView{
            VStack{
                List(restaurants) { restaurant in
                    Text(restaurant.name)
                }

            }
        }
    }
}

enter image description here

我想要的设计是第一张照片。我不知道如何禁用 iOS14 中添加到列表中的边框。有什么建议吗?
1个回答

11

尝试明确使用普通列表样式(我假设现在它们默认使用了插入式列表样式)

    NavigationView{
        VStack{
            List(restaurants) { restaurant in
                Text(restaurant.name)
            }
            .listStyle(PlainListStyle())     // << here !!
        }
    }

这在 iOS 14.7.1 上不起作用。 - Binh Ho
您还可以简化为 .listStyle(.plain) - Chris

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接