Я создал UILabel программно и хотел бы, чтобы он отображал количество ячеек в TableView.
У меня есть следующий код в моем viewDidLoad()
let lb = UILabel()
lb.textAlignment = .center
lb.numberOfLines = 0
lb.text = "Num of Cells: \(structure.count)"
lb.font = UIFont.boldSystemFont(ofSize: 18.0)
newView.addSubview(lb)
И хотел бы присвоить ему следующее значение structure.count
.
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return structure.count
}
Простое выполнение следующего действия в viewDidLoad()
приводит к 0
при загрузке до загрузки ячеек таблицы:
lb.text = "Num of Cells: \(structure.count)"
Как я могу присвоить метке значение struct.count после загрузки всех ячеек в табличном представлении?
Структура заполняется так:
URLSession.shared.dataTask(with: request) { data, _, error in
guard let data = data else { return }
do {
self.structure = try JSONDecoder().decode([StructOne].self,from:data)
DispatchQueue.main.async {
self.tableView.reloadData()
}
}
catch {
print(error)
}
}.resume()
}