Как я могу изменить размер UICollectionViewCell в зависимости от размера его подзонов, используя Auto Layout?
Мой UICollectionViewCell каждый из них имеет только один вид в своем contentView. Это пользовательский подкласс UIView, который автоматически изменяет размеры, чтобы соответствовать всем его представлениям, используя Auto Layout. Он также правильно реализует -intrinsicContentSize. Однако UICollectionView, а точнее его расположение, похоже, не заботятся об этом.
Я использую UICollectionViewFlowLayout и пытаюсь:
- Оставляем
itemSizeпо умолчанию. Это дает мне ячейки размером 50 х 50. - Реализация метода делегата
-collectionView:layout:sizeForItemAtIndexPath:. Однако, когда этот метод вызывается, ячейки (очевидно) еще не появились на экране и не были обновлены системой автоматического макета.
Есть ли способ изменить размер моих ячеек на основе их подзонов с использованием стандартных классов Apple? Или мне нужно реализовать свой собственный подкласс UICollectionViewLayout или что-то еще?