如何在UICollectionView中获取两列,占用整个空间,没有任何边距或间距,这与我下面的图片非常相似:
我尝试使用以下代码:
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath { return CGSizeMake(160,160); } - (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section { return 1.0; } - (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section { return 1.0; }
但得到这个结果:
解决方法
实施
UICollectionViewDelegateFlowLayout
协议,您可以找到许多实现UICollectionView布局的方法.
协议,您可以找到许多实现UICollectionView布局的方法.
collectionView:layout:minimumInteritemSpacingForSectionAtIndex: collectionView:layout:minimumLineSpacingForSectionAtIndex:
应该足以解决这个问题.
还可以实现numberOfItems和numberOfSections来指定行数,列.或者,您可以将单元格的大小指定为(UICollectionView的宽度)/(所需的列数) – 单元格之间的某些偏移量
在cellForItemAtIndexPath.默认情况下,单元格由此计算并相应排列.只要减小大小,你会看到多列. Ref1 Ref2