我正在实现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
的高度?
答案 0 :(得分:1)
符合协议UICollectionViewDelegateFlowLayout
,并实施以下方法:
collectionView(_:layout:sizeForItemAt:)