我使用AutoLayout并拥有一个已启用Paging的collectionView。我希望每个CollectionViewCell都是宽度和宽度。它的CollectionView容器的高度。但是,在AutoLayout上,当我选择CollectionViewCell并尝试将其边缘固定到父级(CollectionView)时,这些选项将显示为灰色。
我在这里设置了单元格大小,但实际上我希望单元格的宽度和高度根据collectionView的大小增长/缩小。 CollectionView具有应用于它的自动布局约束。
Arrange > Position View > Fill Container
看起来可能正是我想要的,但这些选项也是灰色的。
答案 0 :(得分:1)
将集合视图单元格的边缘固定到集合视图本身边缘的选项显示为灰色的原因是,如果这样做,则无法向任何方向滚动。如果你可以约束一个单元格的前沿等于集合视图的前沿,并且你对相应的尾部,顶部和底部边缘做了相同的操作,那么第二个或第三个单元格将没有更多的空间......正确?
所以你想要的方法是实现一个flow layout并利用它
collectionView:layout:sizeForItemAtIndexPath:
方法。在此方法中,您可以动态计算单元格的大小并返回适当的值。如果您的所有单元格大小相同,则更容易,您可以简单地设置流布局的itemSize属性。