如何在UICollectionView中删除单元格之间的空间?

kar*_*tel 6 objective-c ios uicollectionview

如何删除两个单元格之间的空间UiCollectionView?最小间距不起作用.

图片

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
    if (collectionView.tag==101)
    {
        return CGSizeMake((_collView.frame.size.width),(_collView.frame.size.height));

    }
    else
    {
       return CGSizeMake((_collView2.frame.size.width/3)-20,300);
    }
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

Vik*_*kky 9

*在此输入图像描述 *

为单元格设置Min Spacing,为Lines设置为零,并替换代码

- (CGSize)collectionView:(UICollectionView *)collectionView layout:       (UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:   (NSIndexPath *)indexPath
{
if (collectionView.tag==101)
{
    return CGSizeMake((_collView.frame.size.width),(_collView.frame.size.height));
}
else
{
   return CGSizeMake((_collView2.frame.size.width/3),300);
}
 }
Run Code Online (Sandbox Code Playgroud)


Vas*_*vev 6

将UICollectionViewFlowLayout用于这些目的:

UICollectionViewFlowLayout *flow = [[UICollectionViewFlowLayout alloc] init];
flow.itemSize = CGSizeMake(cellWidth, cellHeight);
flow.scrollDirection = UICollectionViewScrollDirectionHorizontal;
flow.minimumInteritemSpacing = 0;
flow.minimumLineSpacing = 0;
Run Code Online (Sandbox Code Playgroud)


小智 1

发生这种情况是因为 UICollectionviewFlowLayout 的工作方式。您可以提供自定义collectionview布局: UICollectionView中的Left Align Cells

或者使用 3d 方解决方案: https://github.com/mokagio/UICollectionViewLeftAlignedLayout