Простите наивную природу этого вопроса, но, несмотря на мой поиск здесь, я не могу найти решение.Пользовательские ячейки не заполняют правильные данные при выключенном экране
В моем проекте у меня есть UITableView с пользовательскими ячейками, все из которых заполнены данными из API. На этом этапе, на основе желаемого дизайна, четыре ячейки видны на экране при запуске, и я должен прокрутить, чтобы увидеть остальные четыре. Каждая ячейка имеет два компонента; ярлык и UIView, который генерирует линейную диаграмму. Первые четыре ячейки работают нормально, но второй набор ячеек (которые находятся вне экрана при загрузке) правильно заполняет метку, но UIView не показывает правильный набор данных (он заполняется ранее использованными данными).
Как ни странно, если я коснусь одной из проблемных ячеек, ячейка немедленно перезагружается с правильными данными.
Для контекста, вот часть моего TableViewController;
...
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return minions.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
return minionCellAtIndexPath(indexPath)
}
func minionCellAtIndexPath(indexPath:NSIndexPath) -> MinionCell {
let minion = minions[indexPath.row]
let cell = tableView.dequeueReusableCellWithIdentifier(minionCellIdentifier, forIndexPath: indexPath) as! MinionCell
if let name = minion.name {
cell.nameLabel?.text = minion.name ?? "Minion"
cell.lineChart?.graphPoints = minion.bandwidth ?? [1,2,3,4,5]
} else {
cell.nameLabel?.text = "No data available."
cell.lineChart?.graphPoints = [1,2,3,4,5]
}
return cell
}
...
Возможно ли, что мне нужно как-то «предварительно визуализировать» ячейки вне экрана при загрузке? Опять же, извините за наивный характер.
Как всегда, спасибо за ваше время!
Это сделало трюк! Я даже не знал код 'setNeedsDisplay', но я посмотрел его и понял сейчас. Большое спасибо, @skyddict! Отметьте ваш ответ как правильный. – ZbadhabitZ
Рад, что я мог помочь! – Teo