首页 > 解决方案 > UIcollectionViewCell内UITableView的动态高度

问题描述

我有一个 UICollectionViewCell,里面有一个 UTableView。我想根据里面的内容动态计算 UITableView 的高度。这意味着,UITableView 不应滚动,而应根据其内容增加/减少其高度。

标签: iosswiftuitableviewuicollectionview

解决方案


您可以像这样使用自定大小的表格视图:

class SelfSizingTableView: UITableView {

    override var intrinsicContentSize: CGSize {
        return CGSize(width: UIView.noIntrinsicMetric, height: contentSize.height)
    }

    override var contentSize: CGSize {
        didSet {
            invalidateIntrinsicContentSize()
        }
    }

}

此外,您必须确保在集合视图单元格中正确设置约束(从集合视图单元格顶部到其底部的完整约束集)。


推荐阅读