Я реализую UITableView
, который содержит UICollectionView
внутри.Конечно, у моего UITableViewCell
есть UICollectionView
, но проблема в том, что я не знаю, как настроить высоту UICollectionViewCell
.Я пытался установить ограничение высоты для просмотра внутри моего UICollectionViewCell
, но это не влияет.Есть много способов играть с размером:
- Размер ручки
UITableViewCell
- Установить ограничение по высоте на
UICollectionView
внутри UITableViewCell
- Использовать метод
UICollectionViewDelegateFlowLayout
- Установить ограничение высоты для просмотра внутри
UICollectionViewCell
(мой метод)
Последний способ является наиболее подходящим для меня, но я хочу знать, почему это не такРабота.Вот конфигурация UICollectionView
:
lazy var booksCollectionView: UICollectionView = {
let layout = UICollectionViewFlowLayout()
layout.scrollDirection = .horizontal
var booksCollectionView = UICollectionView(frame: contentView.bounds, collectionViewLayout: layout)
booksCollectionView.backgroundColor = .clear
booksCollectionView.translatesAutoresizingMaskIntoConstraints = false
return booksCollectionView
}()
Ограничения:
booksCollectionView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor).isActive = true
booksCollectionView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor).isActive = true
booksCollectionView.topAnchor.constraint(equalTo: contentView.topAnchor).isActive = true
booksCollectionView.bottomAnchor.constraint(equalTo: contentView.bottomAnchor).isActive = true
Ячейка внутри UICollectionView
содержит только UIView
:
bookView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor).isActive = true
bookView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor).isActive = true
bookView.topAnchor.constraint(equalTo: contentView.topAnchor).isActive = true
bookView.heightAnchor.constraint(equalToConstant: 440).isActive = true
Изменениевысота bookView
никак не влияет.Почему это происходит?Как мне справиться с высотой для UICollectionViewCell
?