如何使用垂直滚动网格

时间:2018-02-05 13:07:02

标签: ios swift3 uicollectionview

我对UICollectionViewFlowLayout复杂主题有点新鲜,是的!!我已经检查了所有与主题相关的问题但仍然被卡住了。

我尝试实现的目标是在UICollectionView中使用垂直网格布局设置之间的间距。以及之前关于"如何在UIcollectionViewCells"上设置间距的所有问题主题,我尝试的主要答案是不成功的:

  1. 使用minimumInteritemSpacingminimumLineSpacing

  2. 使用func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {

  3. 由于某种原因,第二种解决方案没有实现我的目标   第一个解决方案在垂直网格布局中没有用,因为苹果文档在collectionView(_:layout:minimumLineSpacingForSectionAt:)上指示:

    对于垂直滚动网格,此值表示连续行之间的最小间距。对于水平滚动网格,此值表示连续列之间的最小间距

    我的问题是:我怎么能做一个简单的解决方法,以便我可以在垂直collectionView中设置之间的间距,因为退出minimumInteritemSpacing和{{1仅在水平网格上应用于列。

1 个答案:

答案 0 :(得分:1)

单元格(列)之间的间距取决于collectionView的宽度和单元格的宽度以及"单元格的最小间距"。

因此,如果您的collectionView宽度为300磅,而您的单元格宽度为100磅,则3个单元格* 100 == 300。

如果您的最小间距为零,则每行上将有3个单元格,零间距。

如果你将min-spacing设置为40,3个单元格* 100 +(2个空格* 40)== 380 ...这太宽了,所以每行只能获得2个单元格,并且是300 - (100 * 2)== 100.

因此,要在单元格(列)之间获得特定的固定空间,您需要计算所需的总宽度,并更改集合视图的宽度或截面插入。