【发布时间】:2021-11-25 15:47:58
【问题描述】:
希望任何人都可以帮助我解决我在 SwiftUI 中遇到的问题。我在 ForEach 循环中显示 30 个按钮,这些按钮中的任何一个都应该有自己的弹出框。
我的代码目前看起来像这样:
ForEach(0..<30, id: \.self) { index in
Button {
presentPopover = true
} label: {
ZStack {
Rectangle()
.fill(.white)
.frame(width: 180, height: 55)
.cornerRadius(5)
Text("Runde \(index + 1)")
.bold()
.font(.system(size: 24))
.foregroundColor(.black)
}
}
.popover(isPresented: $presentPopover) {
GameSheetPopOverView(points: $points)
}
}
如何使用 $isPresented 变量来实现这一点?目前,当我点击这些按钮之一时,什么也没有发生。这仅在我有没有 ForEach 循环的单个元素并且每个元素都有一个 $isPresented 变量时才有效。
希望你能帮忙。
提前致谢。
【问题讨论】:
-
将
ForEach中的内容放在它自己的View中。index和points应该是参数 -
非常感谢,这行得通
标签: swiftui-foreach