Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SwiftUI ForEach循环出现错误_Swift_For Loop_Swiftui - Fatal编程技术网

SwiftUI ForEach循环出现错误

SwiftUI ForEach循环出现错误,swift,for-loop,swiftui,Swift,For Loop,Swiftui,我试图在SwiftUI中构建一个ForEach()-循环以构建UI元素,但收到以下错误消息: 无法推断复杂的闭包返回类型;添加显式类型以消除歧义 这是我的密码: var body: some View { HStack { HStack { VStack { ForEach((1...10).reversed(), id: \.self) {

我试图在SwiftUI中构建一个ForEach()-循环以构建UI元素,但收到以下错误消息:

无法推断复杂的闭包返回类型;添加显式类型以消除歧义

这是我的密码:

    var body: some View {
        HStack {
            HStack {
                VStack {
                    ForEach((1...10).reversed(), id: \.self) {
                        Text("\($0)")
                        Spacer()
                    }
                    Spacer()
                }
                Spacer()
            }
            Spacer()
        }
    }

错误指向ForEach语句所在的行。我试图遵循Paul Hudson的教程,请参见:

简而言之:从
ForEach
中删除
Spacer()
ForEach
希望返回类型为
some视图的one值。
您可以将
Text()
Spacer()
包装成
HStack
VStack
,但在这种情况下,您无法通过闭包语法访问数组中的每个数字(
$0
符号应更改为
{element in}
)。 因此,下一个代码将起作用:

var主体:一些视图{
HStack{
HStack{
VStack{
ForEach((1…10).reversed(),id:\.self){中的数字
HStack{
文本(“\(数字)”)
垫片()
}
}
垫片()
}
垫片()
}
垫片()
}
}

这解决了我的问题,谢谢。我刚进入SwiftUI,有些错误很奇怪。