SwiftUI禁用列表边框iOS 14 [重复]

Posted

技术标签:

【中文标题】SwiftUI禁用列表边框iOS 14 [重复]【英文标题】:SwiftUI disable list border iOS 14 [duplicate] 【发布时间】:2020-09-21 04:47:51 【问题描述】:

我发现如果视图包含导航视图,SwiftUI ios 14 中的列表将有类似边框的东西。有什么办法可以禁用边框吗?因为边框破坏了我的应用程序的设计。

这是代码中不包含 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)
                
            
        
    

这是包含 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)
                

            
        
    

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

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

以上是关于SwiftUI禁用列表边框iOS 14 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

列表 iOS 14 SwiftUI 中的额外间距

SwiftUI 列表的透明背景——iOS14 中的行为变化

有没有办法在 SwiftUI 中更改列表的背景颜色? 2020 (iOS 14)

SwiftUI在iOS14+中消除List列表项四周间距的方法

iOS 14.2 中的 SwiftUI PageTabView 性能问题滞后

如何禁用 SwiftUI 的默认行为?