UICollectionViewCell行之间的空格

时间:2013-09-15 22:24:25

标签: ios uicollectionview ios7

目前我的收藏中显示了9个项目。我希望每个部分都有一个3 * 3网格。因此,当我想进入下一部分时,我向右滚动,我看到下一部分的3 * 3网格。我做的是将UICollection的高度设置为3 * height_of_my_cell。我也确保:

- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section
{
    return 0.0f;
}

- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section
{
    return 0.0f;
}

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section {
    return UIEdgeInsetsMake(0, 0, 0, 0);
}

所以我们的目标是让细胞相互粘贴(它们之间没有空间)。问题是我得到的是这样的: enter image description here

要查看7,8和9,我需要向右滚动。所以我看到我能够摆脱“列”之间的空间而不是行。那么我需要创建一个自定义UICollectionViewFlowLayout来实现这一目标吗?这也是在iOS7上完成的,我不确定它是否会影响最终结果。

2 个答案:

答案 0 :(得分:7)

只需设置UICollectionViewFlowLayout的属性,例如:

  

UICollectionViewFlowLayout * layout = [[UICollectionViewFlowLayout alloc] init];    layout.minimumLineSpacing = 0;

答案 1 :(得分:1)

能够通过创建自定义UICollectionViewFlowLayout并添加以下内容来解决此问题:

[self setSectionInset:UIEdgeInsetsMake(-65.0f, 1.0f, 0.0f, 0.0f)];

enter image description here