CollectionView 不显示任何 CollectionViewCell

CollectionView doesn't show any CollectionViewCell

我创建了一个通用的 UIView class,其中包含一个 UICollectionView。如下所示。 (Class 下面还处理了具有默认值的 UICollectionView 的协议)

class MyCollectionView: BaseView<CollectionViewModel> {

private lazy var myCollectionView: UICollectionView = {
    let temp = UICollectionView(frame: .zero, collectionViewLayout: UICollectionViewLayout()) // setting initial collectionView
    temp.translatesAutoresizingMaskIntoConstraints = false
    temp.delegate = self
    temp.dataSource = self
    temp.register(CollectionViewCell.self, forCellWithReuseIdentifier: CollectionViewCell.identifier)
    temp.clipsToBounds = true
    
    return temp
 }() 
}

我创建了一个 MyCollectionView(上面的 class)的实例,并作为子视图添加到 MainViewController( Class 下)。所以这样做让我显示 MyCollectionView 作为 MainViewController 的子视图。到目前为止我已经完成了。

class MainViewController: UIViewController {

private lazy var collectionView: MyCollectionView = {
    let temp = MyCollectionView()
    temp.translatesAutoresizingMaskIntoConstraints = false
    temp.backgroundColor = .black
    
    
    return temp
}()

override func viewDidLoad() {
    super.viewDidLoad()
    view.addSubview(collectionView)
    setUpConstraintsAndViews()
    // Do any additional setup after loading the view.
}

稍后我尝试创建 UICollectionViewCell class 并将其注册到 myCollectionView。但我仍然无法在屏幕上看到任何单元格。我可能会遗漏什么?

您的 MyCollectionView class 不是 UICollectionView。它没有 UICollectionView 的子视图,它有一个创建集合视图的私有变量 myCollectionView

据我所知,您正在添加 MyCollectionView 的实例作为 MainViewController 的子视图。我不明白如何将 UICollectionView 添加到您的视图 MainViewController

MyCollectionView 的消费者应该如何访问它拥有的集合视图?