簡體   English   中英

為什么我的收藏夾視圖單元格沒有顯示…?

[英]Why aren't my collection view cells showing…?

自從我以編程方式創建集合視圖以來已經有一段時間了,我似乎找不到為什么我的單元格沒有顯示的原因。 正在設置委托和數據源。 正在設置尺寸,並且尺寸不太大。

class ViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout {
    let cellId = "cellId"

    override func viewDidLoad() {
        super.viewDidLoad()

        setupCV()
    }

    var containerCollectionView: UICollectionView = {
        let layout = UICollectionViewLayout()
        let cv = UICollectionView(frame: .zero, collectionViewLayout: layout)
        cv.backgroundColor = UIColor.white
        return cv
    }()
}

extension ViewController {
    fileprivate func setupCV() {
        // these first two lines add the colelction view and apply constraints - they work and the CV is properly displayed inside the view controller
        self.view.addSubview(containerCollectionView)
        containerCollectionView.anchor(view.topAnchor, left: view.leftAnchor, bottom: view.bottomAnchor, right: view.rightAnchor, topConstant: 0, leftConstant: 0, bottomConstant: 0, rightConstant: 0, widthConstant: 0, heightConstant: 0)

        containerCollectionView.delegate = self
        containerCollectionView.dataSource = self

        containerCollectionView.register(UICollectionViewCell.self, forCellWithReuseIdentifier: cellId)
    }

    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
        return CGSize(width: 150, height: 150)
    }

    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
        let cell = collectionView.dequeueReusableCell(withReuseIdentifier: cellId, for: indexPath)
        cell.backgroundColor = UIColor.yellow
        return cell
    }

    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return 3
    }
}

您正在初始化錯誤的布局。

嘗試這個:

let layout = UICollectionViewFlowLayout()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM