水平集合视图无效

时间:2017-08-28 21:04:03

标签: ios swift uicollectionview flowlayout swift4

我有一个水平的UICollectionView,我希望它每列有一个项目,所有这些都在一行中。这些物品的大小各不相同。为此,我使用了这个UICollectionViewFlowLayout:

let layout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsets(top: 0, left: 50, bottom: 0, right: 50)
layout.scrollDirection = .horizontal
layout.minimumInteritemSpacing = CGFloat.greatestFiniteMagnitude

然后我用该布局初始化了我的UICollectionView。

项目大小是正确的,但有时它们会被放在同一列中,这很糟糕。根据{{​​3}},我的最后一行应该解决问题,但事实并非如此。最后一行只是使物品彼此相距甚远。我还使用collectionView.height代替CGFloat.greatestFiniteMagnitude进行了测试,但我得到了同样糟糕的结果。

我该如何解决这个问题,这可能是一个Swift 4错误? - 这是在Swift 4中

1 个答案:

答案 0 :(得分:0)

这似乎解决了这个问题。我不确定为什么会这样,但确实如此:)

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
    return view.frame.height
}