Я довольно новичок в программировании, и я застрял в этом некоторое время.У меня есть структура с именем Patient, которая полна переменных, например, var FIRST: String.
Я уже написал код для извлечения данных из JSON и заполнения этой структуры.Он работает нормально, я могу вызвать print (Patient) и увидеть все данные в консоли.
Экземпляр структуры представляет собой 2d-массив, поэтому при печати в консоль я получаю Patient (FIRST: "Боб ", LAST:" Смит ") Пациент (ПЕРВЫЙ:" Дейв ", LAST:" Эванс ") Пациент (ПЕРВЫЙ:" Лиз ", LAST:" Тейлор ")
Первый метод просмотра таблиц работает нормально ивозвращает счетчик 3.
Во-вторых, я застрял:
Я объявил:
static var globalPatientInstance: [Patient] = []
Затем он заполняется данными из обработчика завершения.Вот второй метод:
extension ViewController: NSTableViewDelegate {
func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView? {
let item = ViewController.globalPatientInstance[row]
let cell = tableView.makeView(withIdentifier: (tableColumn!.identifier), owner: self) as? NSTableCellView
cell?.textField?.stringValue = item[(tableColumn?.identifier)!]!
return cell!
}
}
Это дает «Тип« Пациент »не имеет нижестоящих элементов»
Однако, если я изменю строку на:
cell?.textField?.stringValue = item.FIRST
Код будет выполнен, и я получу три строки в табличном представлении, каждая из которых будет иметь свое имя - Боб, Дейв, Лиз.
Как правильно получить остальные данные, т.е. item.LASTтакже отображать?
Спасибо за любую помощь, я пробовал так много разных вещей, но я просто застрял на этом.