Я попал в API и успешно получил ответ. Я использовал кодировку здесь для синтаксического анализа. 1. Но не смог получить конкретное значение. я бы? 2. Сборщик вызывается первым и не загружается со строками, которые мы проанализировали.
Разбор из кодируемого немного липкий. Как получить внутри него содержимое массива, например, значение id.
кодируемая часть: struct Reasons: Codable{ let Reason_and_whom_meet: обе? }
struct both :Codable{
let reason_list : [reasonlist]?
let whom_meet : [nameList]?
}
struct reasonlist :Codable{
let id: Int? //This "id" i couldnt access.
let reason : String?
enum CodingKeys: String, CodingKey {
case reason
case id
}
}
struct nameList :Codable{
let name : String?
enum CodingKeys: String, CodingKey{
case name
}
}
Кодируемая структура, которую я сделал по структуре json, которую я получаю. Должен ли я изменить структуру структуры, которую я использовал.
Если вам нужно значение json, я также могу предоставить, но структура является точной иерархией json.
Часть кода:
do {
let gotData = try JSONDecoder().decode(Reasons.self, from: data!)
let persons = gotData.reason_and_whom_meet?.whom_meet
self.wtmArray.add(persons)
print(self.wtmArray)
let reasons = gotData.reason_and_whom_meet?.reason_list
self.reasonArray.add(reasons)
print(self.reasonArray)
let reasonID = gotData.reason_and_whom_meet?.reason_list![self.reasonID]
print(reasons)
} catch let err {
print("Error", err)
}
Также сначала вызываются методы делегата сборщика, но в это время ответ пуст. Как это решить? Мой выборщик показывает пустым. И ответ такой:
"GoogleClassroomPoC.nameList(name: Optional(\"Teacher\"))"
Но мне нужен только этот Учитель и Директор в моем массиве. Должен ли я преобразовать это в любой формат или мы можем показать его прямо в окне выбора.
Борюсь с этим разбором, помогите пожалуйста!
self.data?.reason_list?[row].id
- person PGDev   schedule 20.03.2018