UICollectionViewFlowLayout minimumInteritemSpacing不起作用
我的UICollectionView有两个问题:
-
minimumInteritemSpacing
不起作用 - 它在iOS 6上水平溢出
我设置了这样的布局:
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; layout.itemSize = CGSizeMake(70.0f, 70.0f); layout.scrollDirection = UICollectionViewScrollDirectionVertical; layout.minimumLineSpacing = 0.0f; layout.minimumInteritemSpacing = 0.0f; _collectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:layout]; // I set the size of _collectionView in layoutSubviews: // _collectionView.frame = self.bounds; _collectionView.contentInset = UIEdgeInsetsMake(8.0f, 8.0f, 8.0f, 8.0f);
该图显示了iOS 6上的结果(在iOS 7上没有溢出,但列之间的间距仍然不为零)
我试过这个解决schemehttps://gist.github.com/OliverLetterer/5583087 ,但它不能解决我的情况。
从minimumInterItemSpacing
属性的文档:
对于水平滚动网格,此值表示同一列中的项目之间的最小间距。 这个间距用于计算一条线上可以放入多less物品,但是在物品数量确定之后, 实际间距可能会向上调整。
stream布局将在其宽度上均匀地放置单元格,间距不得小于所设置的最小值。 如果你不想要间距,你需要实现自己的布局。
我不确定的iOS 6溢出问题。 尝试放弃对iOS 6的支持;)