我们可以使UIView的高度始终与内部UIStackView的高度一起调整大小吗?

问题描述 投票:0回答:1

我有一个内容视图(此内容视图以后将用作UICollectionViewCell内容的子类),其中包含UIStackView。在该堆栈视图中,我添加了一些标签,视图。并且我计算一些条件以确保当标签的数据为空时,该标签将被隐藏,并且堆栈视图将自动更改高度,反之亦然,如果有数据,我将显示它们并通过堆栈视图更新高度再次。

现在,我想知道如何使内容视图的高度始终随着UIStackView高度的变化而变化。

enter image description here

ios swift uiview uicollectionviewcell uistackview
1个回答
0
投票

如果您已经使UIStackView具有跟随其子级的动态高度,那么您所要做的就是在UIStackView和内容视图之间添加约束,并且它也会自动调整大小。

现在,如果将内容视图添加到UICollectionViewCell内,那么无论何时更改UIStackView的内容,都必须确保调用UICollectionView.reloadData()。这样,收集视图将重新计算大小并再次渲染单元格。如果可以确定其indexPath,也可以选择在集合视图中重新加载单个单元格。

注意:请注意CollectionViewFlowLayout以及它指示单元格的大小。建议您通过layout.estimatedHeight告知流布局单元的估计高度。

© www.soinside.com 2019 - 2024. All rights reserved.