您不能使用该包创建没有数据的网格。如果你看它的代码,只有一个QGrid
初始化器,它需要数据。
这是一个最小的例子:
import QGrid
import SwiftUI
struct Item: Identifiable {
let id = UUID()
let name: String
}
struct ContentView: View {
let array = [Item(name: "Name #1"), Item(name: "Name #2"), Item(name: "Name #3"), Item(name: "Name #4"), Item(name: "Name #5")]
var body: some View {
QGrid(array, columns: 3) { value in
MyCell(item: value)
}
}
}
struct MyCell: View {
let item: Item
var body: some View {
Text("\(item.name)")
}
}
您可以在绘制单元格时使用虚假数组并忽略数据。但是你需要那个包吗?另请注意,QGrid 知道要绘制多少个单元格,因为array.count
.
这将是一个虚假的数组:
struct Item: Identifiable { let id = UUID() }
struct ContentView: View {
let array = Array<Item>(repeating: Item(), count: 5)
var body: some View {
QGrid(array, columns: 3) { value in
MyCell()
}
}
}