swift 如何删除GroupedListStyle中列表上方的空间(需要iOS 14的解决方案)

h22fl7wq  于 2023-09-29  发布在  Swift
关注(0)|答案(1)|浏览(90)

我正在尝试使用GroupedListStyle创建列表。但是当我提供一个没有标题的部分时,该部分上方有空白空间。如何消除这种空白?

List {
            Section(header: Text("Section 1")) {
                Text("List 1 - Item 1")
                Text("List 1 - Item 2")
                Text("List 1 - Item 3")
            }
            
            Section(header: Text("Section 2")) {
                Text("List 2 - Item 1")
                Text("List 2 - Item 2")
                Text("List 2 - Item 3")
            }
        }
        .listStyle(.grouped)

我试图提供负填充。它可以在iOS 16+设备上正常工作。但在iOS 15和iOS 14中,没有采取负填充。

bfnvny8b

bfnvny8b1#

这应该可以正常工作:

List {
    Section(
        header: Color.clear.frame(height: 0).listRowInsets(.init()) // <-- 1
    ) {
        Text("List 1 - Item 1")
        Text("List 1 - Item 2")
        Text("List 1 - Item 3")
    }
    
    Section(header: Text("Section 2")) {
        Text("List 2 - Item 1")
        Text("List 2 - Item 2")
        Text("List 2 - Item 3")
    }
}
.listStyle(.grouped)
.environment(\.defaultMinListHeaderHeight, 0.1) // <-- 2

相关问题