Динамичный Header для UICollectionView

swift

#1

В хедере находится label.

Задача:
Сделать так, чтобы при загрузке CollectionView подсчитывалась высота header’a в зависимости от контента внутри него (в нашем случае label’a).

P.S.

Пытался сделать, как с ячейками в tableView: расставил констрейнты на четыре стороны, и label’у lines поставил 0, но не помогло


#2

Добрый день! до этого была такая тема, пожалуйста проверяйте прежде чем постить. Я делал так:
В sizeForItemAt IndexPath я вычеслял высоту Label, и после этого устанавливал эту высоту к cell

let statusText = itemArticle.teaser
                    let forHeight = NSString(string: statusText!).boundingRect(with: CGSize(width: width, height: 1000), options: NSStringDrawingOptions.usesFontLeading.union(NSStringDrawingOptions.usesLineFragmentOrigin), attributes: [NSFontAttributeName: UIFont.systemFont(ofSize: 20)], context: nil)

                    return CGSize(width: width, height: forHeight.height + 200)

#3

Здравствуйте! Я на протяжении нескольких дней искал решение. Видимо, плохо искал :smile:.
Спасибо за решение. Конечно, странно, что с header’ами все вычисления приходится делать вручную.


#4

Ой, забыл, зачем писал :smile:. Не могли бы вы кинуть ссылку на ту тему?


#5

`[> Как изменить высоту ячейки CollectionViewCell]

`[> Как создать анимацию прокрутки ячеек для CollectionView]