Collectionview 卡片布局

问题描述 投票:0回答:1

这是我想要实现的屏幕截图

https://i.stack.imgur.com/u2HiM.png

我需要这种类型的卡片单元集合视图布局。 (带有前缘和后缘显示)。

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
        return CGSize(width: (collectionView.frame.width) - 40 , height: collectionView.frame.height)
    }
    
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {
        let cellWidth : CGFloat = (collectionView.frame.width) - 40
                
                let numberOfCells = floor(collectionView.frame.size.width / cellWidth)
                let edgeInsets = (collectionView.frame.size.width - (numberOfCells * cellWidth)) / (numberOfCells + 1)
                
        return UIEdgeInsets(top: 0, left: edgeInsets, bottom: 0, right: edgeInsets)
        
    }
    
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
        return 0
    }
    
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
        return 40
    }
}

[但是,当我运行代码时,我的单元格看起来像这样]

https://i.stack.imgur.com/M1r4T.png

我看不到上一张和下一张卡片的前缘和后缘。

ios swift uicollectionview uicollectionviewcell uicollectionviewflowlayout
1个回答
0
投票

只需编辑您的 minimunInterspacing 函数并给出一些值。

并确保您已调用类的委托方法,例如 UICollectionViewDataSourc 。并且您还必须检查您是否还添加了 viewDidLoad 和 Datasourse 中的 collectionViewOutletName.delegate = self 。

© www.soinside.com 2019 - 2024. All rights reserved.