将数据从一个集合视图传递到嵌入式集合视图

Passing Data From One Collection View to an Embedded Collection View

我有一个 mainUICollectionView 和一个自定义 mainUICollectionViewCell。在这个 mainUICollectionViewCell 中有一个 nestedUICollectionView 和一个 nestedUILabel 和一个 nestedUICollectionViewCell.

我试图加载的数据是一个名为 questions = [Question]() 的变量,其中 Question 是自定义 class。每个 Question 对象都有一个 title 和一个 [string]()

这是我要实现的逻辑: 1.mainCollectionView应该根据questions.count填充 2. nestedLabel.text = question[indexPath.row].tite 3. nestedCollectionView 应根据相应 question.

answer 属性 进行填充

我通过参考 viewControllers questions 属性 轻松完成了前两个任务。但是,由于我的 nestedCollectionViewUICollectionViewDelegateUICollectionViewDataSourcemainUICollectionViewCell 中,我无法获得它的参考。我怎样才能实现这第三步?

谢谢

你可以试试

class ViewController : UIViewController {

   func collectionView(_ collectionView: UICollectionView, 
  cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {

   // pass data only ,this in the  viewController
        let answers = questions[indexPath.row].answers
        cell.answers = answers 


   //

   }

}

&

class mainUICollectionViewCell: UICollectionViewCell , UICollectionViewDelegate , UICollectionViewDataSource {

       var answers = [String]()

       override func awakeFromNib () {

        super.awakeFromNib()

        self.nestedCollectionView.delegate = self

        self.nestedCollectionView.dataSource= self

       // register the nib / nestedUICollectionViewCell here 

       }
}

//

里面 cellForRowASKpScoreLog 之前 return cell

cell.collectionView.reloadData()