0

我为我的 12 个单元格的 collectionView 创建了一个控制页面。我希望这些单元格分布在 2 页中,在 3 列和 2 行的网格中。但使用当前代码,12 个单元格排列在一行上。我该如何解决?我想我必须改变我的收藏的布局,但我不能改变故事板中的任何东西。如果有帮助,这是我的 pageControl 代码。

 var thisWidth: CGFloat = 0

    override func awakeFromNib() {
        super.awakeFromNib()

        thisWidth = CGFloat(self.view.frame.width)
        cartaCollectionView.delegate = self
        cartaCollectionView.dataSource = self

        pageControl.hidesForSinglePage = true
    }

    func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
        pageControl.currentPage = Int(scrollView.contentOffset.x) / Int(scrollView.frame.width)
    }```
4

1 回答 1

0

开始看UICollectionViewDelegateFlowLayout方法

collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize

为集合中的单元格计算和设置适当的大小将帮助您获得所需的列/单元格。

细胞的顺序重要吗?即你想要第一页上的单元格1-6吗?如果是这样,您将需要构建自定义流程布局。也许你可以改用一个安排UIStackviews

于 2020-06-10T19:19:53.563 回答