美文网首页iOS表格绘制
collectionView minimumLineSpacin

collectionView minimumLineSpacin

作者: 紫嫣沁 | 来源:发表于2021-08-26 14:49 被阅读0次

1. 这两个属性和collectionView的滚动方向有关系:滚动方向相同的间距为minimumLineSpacing 垂直的minimumInteritemSpacing

2. cell排列顺序:  和滚动方向垂直(以左上角为基准)依次排列 水平滚动:从上到下 依次排列  垂直滚动:从左到右依次排列

// line   跟滚动方向相同的间距

 // item  跟滚动方向垂直的间距

3,UICollectionView 已经设置 minimumInteritemSpacing, minimumLineSpacing 两个属性为 0, 依然有空隙,怎么解决?

考虑:必须保证collectionView的宽度必须是cell宽度(如果有space需要是cellW+itemSpace的整倍数)的整倍数,即一行能放下整数个cell

例:滑动方向为垂直方向,itemSpace是10,itemSize是屏幕宽度/3或者itemSize为{90,90} ,collectionView的宽度不是它的整数(或者不是cellW+space的整倍数)

flowLayout.itemSize= (CGSize){(SCREEN_WIDTH)/3,90}

flowLayout.scrollDirection = UICollectionViewScrollDirectionVertical;

// flowLayout.minimumLineSpacing = 0; line是跟滚动方向相同的间距

flowLayout.minimumInteritemSpacing = 10;

由于item之间还有10的间距,导致一行放不下屏幕宽度/3的item,这时系统就会自动只放两个,分别显示在左右两边,剩下的空间作为itemSpace显示在中间,如图:

应该把代码改为

flowLayout.itemSize= (CGSize){ ( SCREEN_WIDTH - 10*2)/3,90}

相关文章

网友评论

    本文标题:collectionView minimumLineSpacin

    本文链接:https://www.haomeiwen.com/subject/vhlonhtx.html