有没有办法在 SwiftUI 中制作 List 样式 insetGrouped?

Rom*_*sin 9 ios swiftui swiftui-list

所以让我们说例如我有一个这样声明的列表

List {
    Section {
        Text(“Test Row Title 1”)
    }
    Section {
        Text(“Test Row Title 2”)
    }
}
Run Code Online (Sandbox Code Playgroud)

是否可以使样式与 UITableView.Style.insetGrouped 相同?我找不到任何相关信息。我以为这会很简单.listStyle(InsetGroupedStyle())

sar*_*unw 8

在iOS的13.2,可以设置.environment(\.horizontalSizeClass, .regular).listStyle(GroupedListStyle()),以获得相同的样式UITableView.Style.insetGrouped

List {
    Section {
        Text(“Test Row Title 1”)
    }
    Section {
        Text(“Test Row Title 2”)
    }
}.listStyle(GroupedListStyle())
.environment(\.horizontalSizeClass, .regular)
Run Code Online (Sandbox Code Playgroud)

https://sarunw.com/tips/inset-grouped-in-swiftui/


Rom*_*sin 6

显然,iOS/iPadOS 14 中有一个新的 API,它最终允许在 SwiftUI 中使用 InsetGrouped 样式。

List {
  ...
}
.listStyle(InsetGroupedListStyle())
Run Code Online (Sandbox Code Playgroud)

  • 你现在可以只写 `.listStyle(.insetGrouped)` :) (2认同)