Я выполнил весь процесс извлечения из JSON результатов трех массивов (имя, исполнитель и цена), которые у меня есть в консоли.Теперь мне нужно поместить их в struct-массив, который я буду использовать для окончательного заполнения моего tableView.Я застрял здесь.
Я попытался назначить последнюю постоянную строку в консоли в качестве аргументов свойства struct.Я подумал, что мог бы использовать их в методе добавления для выполнения моего struct-array.Я что-то здесь упустил.Я не могу заполнить свой массив.Я не использую фактический протокол Codable в Swift 3, потому что считаю важным, чтобы мои знания четко поняли его перед атакой последних обновлений Swift.
do {if let json = try JSONSerialization.jsonObject (with: data,варианты: []) как?[String: Any] {
let results = json as? [String: Any]
if let feed = results!["feed"] as? [String: Any]{
if let entry = feed["entry"] as? [[String: Any]]{
for item in entry{
if let price = item["im:price"] as? [String: Any]{
if let labelPrice = price["label"] as? String{
print(labelPrice)
self.topTen.songPrice = labelPrice
}
}
}
for item2 in entry{
if let name = item2["im:name"] as? [String: Any]{
if let labelName = name["label"] as? String{
print(labelName)
self.topTen.name = labelName
}
}
}
for item3 in entry{
if let artist = item3["im:artist"] as? [String: Any]{
if let labelArtist = artist["label"] as? String{
print(labelArtist)
self.topTen.artist = labelArtist
}
}
}
}
}
DispatchQueue.main.async {
self.tableView.reloadData()
}
}
}
catch{
print(error.localizedDescription)
}
}
task.resume()
}
Если я вставлю: topTenArray.append ((TopTen (имя: topTen.name, исполнитель: topTen.artist, songPrice: topTen.songPrice))), я могу 'Заполните массив либо.