我正在使用复杂组合的用户界面。我在最外层有一个UITableView
。我的内部有一个包含UICollectionView
的自定义单元格。集合视图中的每个单元格都包含一个带有不同文本量的标签。单元格动态调整大小,表格中的集合和行也应如此,以适应各种选择。
我遇到的问题是该集合只显示四个单元格,而应该有六个单元格。我在UICollectionViewFlowLayout
的子类中放了一些println语句,并且可以在layoutAttributesForElementsInRect
内看到它被多次调用 - 首先,集合的宽度尚未自动调整,因此collectionViewContentSize
认为它更宽,解释了为什么集合视图只展开以显示两行。但是,在最后一次调用layoutAttributesForElementsInRect
时,宽度是正确的,应该有更多的行,但是这一点似乎已经设置了集合视图的大小。
在这里您可以看到更广泛的视图显示的内容:
有没有人知道如何强制自动布局为集合分配垂直空间后为集合设置宽度或者设置集合的宽度更早?