【问题标题】:Reducing space between sections for grouped List in SwiftUI?减少 SwiftUI 中分组列表的部分之间的空间?
【发布时间】:2021-07-28 21:45:34
【问题描述】:

我一直在尝试使用 GroupedListStyle() 来减少列表中各部分之间的空间,但没有任何运气。

上面截图的代码:

struct ContentView: View {
    var body: some View {
        List {
            Section {
                Text("Hello, World!")
                Text("Hello, World!")
                Text("Hello, World!")
            }
            Section {
                Text("Hello, World!")
            }
            Section {
                Text("Hello, World!")
                Text("Hello, World!")

            }
        }.listStyle(GroupedListStyle())
    }
}

任何建议将不胜感激。

【问题讨论】:

标签: swift listview swiftui


【解决方案1】:

你可以像这样将它添加到视图之外

    struct ContentView: View {
        init() {
           UITableView.appearance().sectionFooterHeight = 0
        }

        var body: some View {}
    }

【讨论】:

    【解决方案2】:

    我不喜欢这个解决方案,但我回想UITableView 的工作原理并猜测可能是页脚间距导致了这种情况。

    我补充说:

    UITableView.appearance().sectionFooterHeight = 0
    

    到视图的初始化,这似乎奏效了。

    我知道这会全局设置该外观,因此当视图消失时重置该值可能会很好。

    【讨论】:

    • 如何将它添加到视图中?
    • 你可以把它放在视图的初始化中。虽然我后来发现使用 LazyVStack 而不是 List 要好得多。它不受 UITableView 支持,因此您不会遇到所有这些问题。