UICollectionView间距边距不占用方法的空间

时间:2014-07-06 21:48:32

标签: objective-c uicollectionview uicollectionviewlayout

我正试图杀掉UICollectionViewCell所拥有的边距,如图所示。我尝试使用我能想到的所有方法来取消边缘,但似乎没有任何效果。当我使用NSLog

测试时,所有方法都被调用

我必须做什么才能使所有细胞聚集在一起,它们之间没有空间?

    - (NSInteger)collectionView:(UICollectionView *)view numberOfItemsInSection:(NSInteger)section {

    return 9;
}

- (NSInteger)numberOfSectionsInCollectionView: (UICollectionView *)collectionView {
    return 1;
}
- (CGSize)collectionView:(UICollectionView *)collectionView
                  layout:(UICollectionViewLayout *)collectionViewLayout
  sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
    return CGSizeMake(100.f, 67.f);
}
- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section {
    NSLog(@"layout1");
    return 0.0f;
}
- (UIEdgeInsets)collectionView:(UICollectionView*)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section {
    NSLog(@"layout2");
    return UIEdgeInsetsMake(0, 0, 0, 0);
}

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

1 个答案:

答案 0 :(得分:2)

  

我必须做什么才能使所有细胞聚集在一起,它们之间没有空间?

假设您正在使用UICollectionViewFlowLayout,则应使集合视图的宽度为单元格宽度的偶数倍。否则,布局将分配单元格之间的剩余空间。

您还可以编写自己的布局类,将所有单元格彼此相邻放置,并在行尾留下任何剩余空间,或者在行的开头和结尾之间或者您喜欢的任何内容之间进行拆分。但那是更多的工作。