如何在 SwiftUI 中创建网格

Sin*_*N75 3 swift swiftui

我知道我们可以像这样在垂直 SwiftUI 中创建一个列表,

struct ContentView : View {
    var body: some View {
        NavigationView {
            List {
                Text("Hello")
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是有什么方法可以将列表分成 2 个或 3 个或更多的跨度,像我们在其中所做的那样像网格一样覆盖屏幕 UICollectionView

Ale*_*lex 5

在此处查看基于 ZStack 的示例

Grid(0...100) { _ in
    Rectangle()
        .foregroundColor(.blue)
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明


Moj*_*ini 5

iOS 14

您可以使用2 个新的 native View

  1. LazyHGrid 水平网格

  2. LazyVGrid 虚拟网格

使用代码或直接从库:

预览

该库包含完整工作的示例代码,您可以自行测试。