【问题标题】:Unable to set width of UICollectionViewCell content with AutoLayout无法使用 AutoLayout 设置 UICollectionViewCell 内容的宽度
【发布时间】:2019-04-01 00:33:00
【问题描述】:

我正在使用集合视图创建一个网格视图,但一些大型 iPhone 在右侧有间距。

我在 collectionViewLayout 方法中使用了下面的代码:

return CGSizeMake(cellSize / 4, cellSize /4)

请查看图片了解更多详情。

【问题讨论】:

  • 您是否在 collectionView 和视图边缘之间添加了约束?

标签: ios objective-c uicollectionview autolayout uicollectionviewcell


【解决方案1】:

单元大小不是问题。问题在于间距。它不能同时具有固定项目大小固定项目间距。所以你必须让其中之一动态化。

尝试在 flowLayout 中计算间距或项目大小;)

【讨论】:

  • 谢谢,我无法设置固定的项目大小。如果我可以增加 cellSize 则 gridView 只显示三个单元格。
【解决方案2】:

添加以下方法后问题解决:

- (void)viewDidLayoutSubviews {

    [super viewDidLayoutSubviews];
    //Invalidate collection view layout to make it recalculate
    [yourCollectionView.collectionViewLayout invalidateLayout];
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-18
    • 1970-01-01
    • 2018-08-06
    • 2019-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多