В моем случае я пытаюсь загрузить JSON
данные в UITableview
. Здесь данные JSON, которые я получаю из API с помощью метода Codable
и Decodable
. Теперь у меня нет идентификатора для сортировки моего списка, потому что я использую dictionary
неупорядоченный. Итак, как этого добиться?
ПРИМЕЧАНИЕ: meeting_id
на основе необходимости сортировать мою загрузку данных просмотра таблицы.
Образец JSON
{
"status": true,
"data": [
{
"meeting_id": "37",
"title": "abc",
"sort_key": "21:00",
},
{
"meeting_id": "41",
"title": "a1",
"sort_key": "03:00",
}
]
}
Кодируемая структура
struct Events: Codable {
let status: Bool
let data: [Eventdata]
}
struct Eventdata: Codable {
let meetingID, title, sort_key: String
enum CodingKeys: String, CodingKey {
case meetingID = "meeting_id"
case title
case sortKey = "sort_key"
}
}
Декодирование моего кода
var eventsData = [Eventdata]()
do {
let decoder = try JSONDecoder().decode(Events.self, from: data)
let status = decoder.status
if status == true {
self.eventsData = decoder.data
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
self.tableView.reloadData()
}
} else {
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
//self.Alert(Meesage: ServerValidation().servervalidation_msg)
}
}
} catch {
print(error)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
//self.Alert(Meesage: ServerError().servererror_msg)
}
}