SwiftUI:如何使用for循环填充dict?
正在开发一个账单拆分应用程序,我正在尝试创建一个包含每个人必须支付的金额的字典,例如:
{
"Person 1": 20,
"Person 2": 50,
"Person 3": 30
}
现在,我将通过运行以下命令进行均匀拆分:
var dataDict: [String: Int] {
let numberOfPeople = 5
let billTotal = 100
let costPerPerson = billTotal / numberOfPeople
var dict: [String: Int] = [:]
ForEach(1 ..< numberOfPeople+1) { number in
dict["Person (number)"] = costPerPerson
}
return dict
}
但是我在 ForEach 上收到以下错误:
类型 '()' 不能符合 'View';只有结构/枚举/类类型可以符合协议
我到底做错了什么,我怎么能用 for 循环填充 dict?
回答
ForEach不是 Swift 中的 for 循环。这是 SwiftUI 的视图。你在这里的意思是语法:
for number in 1...numberOfPeople {
dict["Person (number)"] = costPerPerson
}