Я столкнулся с общей проблемой перезагрузки данных TableView. Я прочитал много вопросов на ту же тему, но проблема никогда не была такой же, как у меня ...
У меня есть приложение на основе навигации. В методе RootViewController viewDidLoad я делаю запрос, чтобы получить данные JSON (статьи). После завершения загрузки соединения я создаю собственные объекты Article для каждой записи. Класс Article имеет метод initWithDictionnary, который инициализирует атрибуты объекта и, что наиболее важно, создает запрос на загрузку изображения. Когда соединение завершило загрузку, я установил атрибут изображения объекта Article.
Цель состоит в том, чтобы инициализировать свойство cell.imageView.image с загруженным изображением. В этот момент вы, возможно, догадались, в чем проблема.
Изображения загружаются после визуализации изображения ячейки, поэтому оно остается пустым до тех пор, пока ячейка не будет перезагружена (если она выходит из экрана и затем возвращается, например).
Я думаю, что я должен вызвать reloadData в определенное время, но я не знаю когда. В идеале я бы назвал это, когда все клетки загружены, но это не представляется возможным.
Я перепробовал кучу сумасшедших вещей, таких как ожидание загрузки ячейки и попытка перезагрузить предыдущую, но это не сработало.
Читая здесь вопросы и ответы, я узнал об образце кода Apple LazyTableImage, но я не понимаю всего этого, поэтому я не уверен, что должен / мог бы его использовать.
Пожалуйста, спросите меня, если вам нужно больше деталей.
Заранее спасибо за любую помощь.