将单元格动态添加到SwiftUI LazyGrid
如何在SwiftUI中动态地将单元格(而不是列)添加到一些LazyVGrid中? 以下代码应通过单击按钮添加1个单元格。它可以编译,但不起作用。 我错过了什么将单元格动态添加到SwiftUI LazyGrid,swiftui,lazyvgrid,Swiftui,Lazyvgrid,如何在SwiftUI中动态地将单元格(而不是列)添加到一些LazyVGrid中? 以下代码应通过单击按钮添加1个单元格。它可以编译,但不起作用。 我错过了什么 import SwiftUI struct GridContent: Identifiable { var id = UUID() } struct ContentView: View { @State var counter = [ GridContent() ] var gridLayout = [ Gr
import SwiftUI
struct GridContent: Identifiable {
var id = UUID()
}
struct ContentView: View {
@State var counter = [ GridContent() ]
var gridLayout = [ GridItem() ]
var body: some View {
LazyVGrid(columns: gridLayout) {
ForEach(counter.indices) { item in
Text("\(item)")
}
Button(action: {
counter.append(GridContent())
}) {
Image(systemName: "plus.circle.fill")
}
}
}
}
在这种情况下,应该使用ForEach的动态变量,如
var body: some View {
LazyVGrid(columns: gridLayout) {
ForEach(counter.indices, id: \.self) { item in // << here !!
var主体:一些视图{
LazyVGrid(列:gridLayout){
ForEach(counter.index,id:\.self){item in//