【问题标题】:collection view no margin on right集合视图右侧没有边距
【发布时间】:2021-02-11 14:30:14
【问题描述】:

我有一个包含两列的集合。 图像如下所示:

使其成为两列的代码是:

 if let layout = alllistcollview?.collectionViewLayout as? UICollectionViewFlowLayout{
                    layout.minimumLineSpacing = 10
                    layout.minimumInteritemSpacing = 10
                    layout.sectionInset = UIEdgeInsets(top: 0, left: 10, bottom: 0, right: 10)
                    let size = CGSize(width:(alllistcollview!.bounds.width-30)/2, height: 200)
                    layout.itemSize = size
        }

另外,在情节提要中,单元格间距如下:

问题是第二列没有出现右侧间距。 另外,单元格的某些部分似乎被切断了。

【问题讨论】:

    标签: swift cell margin collectionview spacing


    【解决方案1】:

    首先你需要实现 UICollectionViewDelegateFlowLayout

    然后像这样添加这个函数

    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
            let lay = collectionViewLayout as! UICollectionViewFlowLayout
            let widthPerItem = collectionView.frame.width / 2 - lay.minimumInteritemSpacing
            
            return CGSize(width:widthPerItem, height:150)
        }
    

    我将高度定义为 150。别介意

    【讨论】:

    • 我同意。我首先在 viewdidload 中添加了流程布局代码,然后添加了这些流程布局委托。然后它按预期工作。
    猜你喜欢
    • 1970-01-01
    • 2022-07-22
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    • 2018-02-19
    • 2019-11-24
    • 2021-11-10
    • 1970-01-01
    相关资源
    最近更新 更多