Я пытаюсь получить некоторые значения из словаря, который находится в массиве, и я не знаю, как бы я это сделал.Я был в состоянии получить материал из словаря и из массива, но не вместе с ними.Я использую api openweathermap, если это вообще помогает.
Я попытался объединить 2 разных способа, которые я сделал, но это не сработало.Вот что я попробовал:
struct HourlyWeatherAPI: Decoder
{
let main: Main
let wind: Wind
struct Main: Decodable
{
let temp: Double
}
struct Wind: Decodable
{
let speed, deg: Double
}
}
Это - ^ вверху моего кода, а потом это намного позже
if let tempJson = jsonObject["list"] as? [[String:AnyObject]]
{
for eachTemp in tempJson
{
let decoder = JSONDecoder()
decoder.keyDecodingStrategy = .convertFromSnakeCase
let result = try decoder.decode(HourlyWeatherAPI.Main.self, from: data!)
print(result.temp)
}
}
Это часть того, что выходит изAPI, только первая запись.Я пытаюсь взять материал в основном:
{
"cod": "200",
"message": 0.0197,
"cnt": 96,
"list": [
{
"dt": 1555196400,
"main": {
"temp": 282.26,
"temp_min": 281.409,
"temp_max": 282.26,
"pressure": 1018.06,
"sea_level": 1018.06,
"grnd_level": 985.672,
"humidity": 56,
"temp_kf": 0.85
},
"weather": [
{
"id": 804,
"main": "Clouds",
"description": "overcast clouds",
"icon": "04d"
}
],
"clouds": {
"all": 100
},
"wind": {
"speed": 3.99,
"deg": 313.922
},
"sys": {
"pod": "d"
},
"dt_txt": "2019-04-13 23:00:00"
},