Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.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
需要使用foreach在swift用户界面中增加数字的帮助吗_Swift_Foreach_Swiftui - Fatal编程技术网

需要使用foreach在swift用户界面中增加数字的帮助吗

需要使用foreach在swift用户界面中增加数字的帮助吗,swift,foreach,swiftui,Swift,Foreach,Swiftui,这是我的代码,每次我输入代码,它都会告诉我 “无法推断复杂的关闭返回类型; 添加显式类型以消除歧义“您尝试执行的操作与创建某些视图无关,因为ForEach是一种视图类型 一个for循环应该足以满足您要做的事情 ForEach(self.thingobserved.things){ i in If self.data == i.something { Count+= 1 } } 您可能会混淆SwiftUI的ForEach(一种视图类型),它类似于集合的ForEach。您不希望在ForEach视

这是我的代码,每次我输入代码,它都会告诉我

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

您尝试执行的操作与创建某些视图无关,因为ForEach是一种视图类型

一个
for
循环应该足以满足您要做的事情

ForEach(self.thingobserved.things){ i in
If self.data == i.something {
Count+= 1
}
} 

您可能会混淆SwiftUI的ForEach(一种视图类型),它类似于集合的ForEach。您不希望在ForEach视图的主体中改变一个值,因为每次重新渲染视图层次结构时都会运行该值。你是想在这里创建一些视图,还是只是想在一个集合中增加一个数字?它实际上不是这样工作的
ForEach
不像
for
循环。它是一个函数,用于在项目集合和显示该集合所需的视图内容之间建立关联。当视图刷新时,没有任何内容表明
ForEach
循环必须在所有元素上循环,就像
for
循环一样。相反,它可以变得智能化,只为自上次评估以来已更改的
self.thingsobserved
成员重新绘制(重新运行主体)。是的,我只是尝试增加该数字,我不尝试创建任何视图,但我只想知道如何修复我遇到的此错误
for item in self.thingsObserved.things {
    if self.data == item.something {
        count += 1
    }
}