Попытка иметь гладкую динамическую высоту, в настоящее время она работает, но она глючит от одного размера до динамического размера с не выглядит хорошо.Лучший способ достичь динамической высоты ячейки для UIImageView внутри tableViewCell?
Heres мой код внутри cellForRowAtIndexPath
cell.productImageView.file = (PFFile *)object[@"image"];
[cell.productImageView loadInBackground:^(UIImage * _Nullable image, NSError * _Nullable error) {
cell.imageHeightConstraint.constant = image.size.height/image.size.width * cell.cardView.frame.size.width;
[cell.productImageView setNeedsUpdateConstraints];
NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];
if (indexPath != nil) {
[self.tableView beginUpdates];
[self.tableView endUpdates];
}
[UIView animateWithDuration:0.50f animations:^{
[cell.cardView layoutIfNeeded];
}];
}];
Так как вы можете видеть, я просто обновить ограничение высоты ImageView, а затем клетка изменяет соответственно. Но все еще глючный.
Есть ли лучший способ?
Вы не должны возиться с макетом в 'cellForRowAtIndexPath'. Существует метод 'heightForRowAtIndexPath', который вы должны реализовать, чтобы установить высоту строки. – user3386109
Не могли бы вы показать мне программное решение? @ user3386109 – farhan
создать пользовательский элемент xib и использовать ограничения автоматической компоновки. –