SWIFT:如何使UICollectionView项在返回行之前填充行

问题描述

这是我已经实现的:

enter image description here

看到右侧的黑色空间,它仍然可以容纳两个额外的项目。 但是由于某种原因,从第7项开始,渲染从下一行开始。
我的布局配置仅更改了两个参数:

class CarouselFlowLayout: UICollectionViewFlowLayout {
    override init() {
        super.init()
        minimumLinespacing = 40
        minimumInteritemSpacing = 20
    }
    
    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    
    override func prepare() {
        super.prepare()
    }
}

任何想法,在返回下一行之前,我应该配置哪些参数以强制collectionView填充每个“行”?

解决方法

我需要做的就是将scrollDirection设置为水平:

  override init() {
        super.init()
        // This needs to be vertical in order for the collectionView to fill rows before columns in the case of displaying the whole collection view as a grid like in VoirTout page
        scrollDirection = .vertical
        minimumLineSpacing = 40
        minimumInteritemSpacing = 20
    }