我正在尝试使用 http POST 获取 JSON 数组来填充我的 tableviewcontroller。这是我现在的代码:
let myJSON = try JSONSerialization.jsonObject(with: data!, options: []) as! NSArray
print (myJSON)
let testArr = myJSON[0] as! [String:Any]
print (testArr)
let testVar = testArr["Username"] as! String
print (testVar)
for object in myJSON {
//error line below
guard let cellItem = History1(name: object.Username, status: "Placeholder") else {
fatalError("cannot create")
}
self.history1s += [cellItem]
}
myJSON 是来自 mysql 语句“SELECT * FROM USER”的 json 响应。现在我遇到错误“‘Any’类型的值没有成员‘用户名’。将用户名括在方括号中会出现错误“未解析的标识符用户名的用户”
我真的不明白为什么打印可以工作,但下面的循环却不能。
我认为我采用这种方法的方式存在根本性错误。我对 Swift 很陌生,所以很多术语对我来说可能没有意义。任何建议将不胜感激。
最佳答案
您可以尝试按键循环,然后按键获取对象
for key in myJSON.keys {
//error line below
guard let cellItem = History1(name: myJSON[key].Username, status: "Placeholder") else {
fatalError("cannot create")
}
self.history1s += [cellItem]
}
关于json - 迭代数组以填充 tableviewcells 的 Swift 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41540485/