我已经重载UICollectionViewFlowLayout
以在每个UIImages
中包含一个包含UICollectionViewCell
的水平行滑块。
在重载的UICollectionViewFlowLayout
中,我将minimumLineSpacing
设置为0,以使UICollectionViewCells
之间没有间距。 (默认为10px)
如果每个单元格具有相同的宽度,则正确显示0px间距
如果单元格的宽度较大,则不再考虑0px,并且应用单元格之间的默认10px ..
我试图实现以下方法但结果相同......
- (CGFloat)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout*)collectionViewLayout
minimumLineSpacingForSectionAtIndex:(NSInteger)section {
return 0.0;
}
UICollectionViewCells
宽度不同的{{1}}之间获取0px间距的“技巧”是什么?答案 0 :(得分:5)
这是一个错误吗? 否强>
这不是错误,它是UICollectionViewFlowLayout
的默认行为。流布局是一种换行布局,意味着假设它将所有单元格沿直线放置并将其排列在屏幕上。一旦它填满一行(没有新项目的空间),它将打破该行并继续下一行。 UICollectionViewFlowLayout
确保 minimumLineSpacing 不确切。如果您的项目大小不同,则流布局会以保持最小行间距的方式排列单元格。因此,行大小可能会增加,但永远不会比您之前设置的值更低。
我不认为流布局是可行的,你应该使用一个自定义布局。检查this iam不确定是否可以将间距设置为零试一试 JSPrintDemo