Я работаю над клиентом, похожим на твиттер, и есть представление списка сообщений, реализованное UITableView. Для каждой ячейки может потребоваться загрузить изображение динамического размера, и изображение загружается асинхронно. Таким образом, размер изображения неизвестен при загрузке табличного представления.
Можно ли обновить высоту uitableviewcell после загрузки изображения.
Насколько мне известно, единственный способ обновить высоту - это следующий метод: - (CGFloat) tableView: (UITableView *) tableView heightForRowAtIndexPath: (NSIndexPath *) indexPath Но он просто вызывается при загрузке данных в первый раз. Это разумно с точки зрения производительности. В любом случае, есть ли способ изменить высоту позже?
Спасибо за любую информацию!
Наконец, я использовал reloadRowsAtIndexPaths для обновления определенных строк, вы можете попробовать это для скрытых ячеек.
[self.tableView beginUpdates];
[self.tableView reloadRowsAtIndexPaths:toReloadRows withRowAnimation: UITableViewRowAnimationNone];
[self.tableView endUpdates];
Но при обновлении высоты видимых ячеек ячейка трясется. Поэтому лучше рассчитать высоту ячейки заранее.