最后一个单元格的UICollectionView布局

Nic*_*kYu 10 flowlayout uicollectionview

我有一个带有UICollectionViewFlowLayout的collectionview,我在其中放了10个项目.它们有不同的尺寸:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {

if (indexPath.row<6) {
    CGSize retval =  CGSizeMake(100, 100);
    return retval;
}

CGSize retval =  CGSizeMake(200, 130);

return retval;
}
Run Code Online (Sandbox Code Playgroud)

它的布局如下:前6个单元看起来很好,7-9是正确的,但最后一个不是中心对齐的,

在此输入图像描述 在此输入图像描述

任何人都可以向我解释一下吗?

和怨恨的日子我正在玩收集布局,但仍然感到困惑的选择flowlayout和自定义布局.关于这个的任何原则?

很多thx提前.

Dan*_*sko 5

我遇到了一个类似的问题,集合视图中的最后几个单元格有一个难看的偏移。在我的情况下,这是由于不遵守有关项目大小的部分插图的结果。

尝试将 flowLayout 的 sectionInset 设置为 0:

flowLayout.sectionInset = UIEdgeInsetsZero;
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,您可能需要强制执行 minimumInterItemSpacing 因为流布局似乎在最后几个单元格上对此进行了干扰:

flowLayout.minimumInteritemSpacing = 10.f;//or any reasonable number
Run Code Online (Sandbox Code Playgroud)