Невозможно отобразить проанализированные данные JSON в UITableView - PullRequest
0 голосов
/ 03 ноября 2019

Я анализирую данные JSON во вложенную структуру объекта модели. Я также сортирую модель и добавляю в свой массив sortedArr, который отсортирован по алфавиту. Я пытаюсь отобразить имена и другую информацию, такую ​​как биография, в виде таблицы. При попытке отобразить имена indexPath в моей ячейке табличного представления я не могу связаться с членами массива, такими как fullName, биография и т. Д.

struct Response: Decodable {
    struct Students: Decodable {
        var fullName :String
        var biography:String
        var emailAddress:String

        enum CodingKeys: String, CodingKey {
            case fullName = "full_name"
            case biography
            case emailAddress = "email_address"
        }
    }

    var students:[Students]
}

var sortedArr = [[Response.Students]]()

func parseData(){
    guard let url = URL(string: "xxxxxx") else {return}
    let task = URLSession.shared.dataTask(with: url) { (data, response, error) in
        guard let dataResponse = data,
            error == nil else {
            print(error?.localizedDescription ?? "Error")
            return 
        }
        do {
            let response = try! JSONDecoder().decode(Response.self, from: dataResponse)

             self.sortedArr = response.students.sorted{$0.fullName < $1.fullName}

            DispatchQueue.main.async {
                self.tableView.reloadData()
            }
        } catch let parsingError {
            print("Error", parsingError)
        }
    }
    task.resume()
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return sortedArr.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: cellID, for: indexPath) as! EmployeeTableViewCell

    let emps = sortedArr[indexPath.row]
    cell.titleLabel.text = emps.fullName  //has no member fullName
    return cell
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...