Я столкнулся с этой проблемой, и я пытался выяснить, как ее исправить, но безуспешно. У меня есть табличный вид с ячейками, которые содержат изображение, которое я до сих пор не знаю, какая высота будет. Я создал выход для ограничения высоты изображенияView, и я загружаю изображение асинхронно с PinRemoteImage (я тоже могу использовать SDWebImage
, но я думаю, что это ошибка в iOS 9). Внутри блоков я назначаю новую константу для ограничения высоты, а затем выполняю обновление макета. Клетка никогда не обновляет, единственный способ, которым я могу видеть изображение правильно прокрутки вниз, а затем вверх (когда TableView перерисовывает ячейку)Асинхронное скачивание изображения внутри ячейки, не зная высоты
__weak typeof(UITableView*) weakTable = tableView;
__weak typeof(NSIndexPath*) index = indexPath;
[cell.commentImageView pin_setImageFromURL:[[CTImageHelper sharedInstance] resizedImageURLConverterFromStringWithPrefix:comment.image.completePath andOptions:optionsString] completion:^(PINRemoteImageManagerResult *result) {
CommentTableViewCell *cellToUpdate = [weakTable cellForRowAtIndexPath:index];
cellToUpdate.heightSize = [NSNumber numberWithFloat:result.image.size.height/2];
cellToUpdate.commentImageViewHeightConstraint.constant = result.image.size.height/2;
[cellToUpdate setNeedsLayout];
}];
Это код для установки таблицы высоты вид строки автоматически
self.postTableView.estimatedRowHeight = 244.0;
self.postTableView.rowHeight = UITableViewAutomaticDimension;
И образ об ограничениях клеток:
Любые идеи о том, что я делаю неправильно? Благодаря!
Не дают ограничение высоты для ImageView. Обновите эту ячейку при загрузке изображения. Ячейка должна расти автоматически – Irfan