【问题标题】:Why is AutoLayout not taking care of my UICollectionView为什么 AutoLayout 不照顾我的 UICollectionView
【发布时间】:2012-12-21 07:50:07
【问题描述】:

我使用UICollectionView 构建了一个非常简单的应用示例(github 上的源代码)。

只要应用处于纵向模式,一切正常。但是,当它更改为横向模式时,内容单元格的大小没有适当调整,因此什么也没有显示。

我认为所有必要的 AutoLayout 约束都已到位。我知道我可以实现collectionView:layout:sizeForItemAtIndexPath:,但我的目标是尽可能多地使用AutoLayout(只是为了更好地理解AutoLayout)。

我在这里错过了什么?

【问题讨论】:

    标签: ios ios6 uicollectionview autolayout


    【解决方案1】:

    您可以使用自动布局来设置集合视图的位置和大小。您可以使用自动布局来设置每个单元格内子视图的位置和大小。但是您不能使用自动布局来控制单元格的位置和大小。您必须使用集合视图的布局对象来设置每个集合视图单元格的位置和大小。如果您希望单元格在界面方向更改时更改大小,则必须更新布局对象以报告新大小并使布局无效。

    【讨论】:

    • 从 iOS 8 开始,可以自行调整单元格大小。布局将在适当时创建单元格的实例,您可以使用自动布局约束或覆盖 sizeThatFits:。布局必须设置其estimatedItemSize 属性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-03
    • 1970-01-01
    • 1970-01-01
    • 2014-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多