我正在使用Xcode 11.3和Swift5开发我的第一个iOS应用。
但是我只能在视图上使用ForEach。
我想使用Foreach在ZStack中放置某些struct
,但仍然会出错。
Error : Unable to infer complex closure return type; add explicit type to disambiguate
我不知道该如何解决。你能帮我吗?
/* Struct I want to put in */
struct Verses: Identifiable{
var id: Int
var verse : Int
}
/* I want to load all values from struct using foreach in view. */
ZStack {
ForEach(controller.verses) { w in <- Here is where I get error.
Rectangle()
.foregroundColor(Color.white)
.cornerRadius(28)
.opacity(0.4)
.offset(x:0, y:68)
.frame(width:290, height:280)
CardView(date: w.date)
.gesture(DragGesture()
.onChanged({ (value) in
......
答案 0 :(得分:1)
ForEach
行必须由 single 视图表示,因此您需要类似以下内容(我仍然不确定容器的类型,仅举例来说)
ForEach(controller.verses) { w in
ZStack {
Rectangle()
.foregroundColor(Color.white)
.cornerRadius(28)
.opacity(0.4)
.offset(x:0, y:68)
.frame(width:290, height:280)
CardView(date: w.date)
.gesture(DragGesture()
.onChanged({ (value) in
...
}
}