Swift 正在尝试配置UICollectionViewDiffableDataSource func configureDataSource(){ 打印(“配置数据源!!!”) dataSource=UICollectionViewDiffableDataSource (collectionView:storyCollectionView){ (collectionView:UICollectionView,indexPath:indexPath,storyItem:storyItem)->UICollectionViewCell?在 打印(“尝试创建集合视图单元格!”)

Swift 正在尝试配置UICollectionViewDiffableDataSource func configureDataSource(){ 打印(“配置数据源!!!”) dataSource=UICollectionViewDiffableDataSource (collectionView:storyCollectionView){ (collectionView:UICollectionView,indexPath:indexPath,storyItem:storyItem)->UICollectionViewCell?在 打印(“尝试创建集合视图单元格!”),swift,uicollectionview,diffabledatasource,Swift,Uicollectionview,Diffabledatasource,显示调用了函数的print语句出现在控制台中,但{forUICollectionViewDiffableDataSource中的代码未运行 关于下一步在哪里进行故障排除有什么建议吗?非常感谢!需要更多的代码。您需要用一些数据填充可扩散数据源。否则,集合视图中的项目数为零,不需要生成任何单元格 一个典型的舞蹈(通常在viewDidLoad中)是这样的: func configureDataSource() { print("configure dataSource!!!") da

显示调用了函数的print语句出现在控制台中,但{for
UICollectionViewDiffableDataSource
中的代码未运行


关于下一步在哪里进行故障排除有什么建议吗?非常感谢!

需要更多的代码。您需要用一些数据填充可扩散数据源。否则,集合视图中的项目数为零,不需要生成任何单元格

一个典型的舞蹈(通常在
viewDidLoad
中)是这样的:

func configureDataSource() {
    print("configure dataSource!!!")

    dataSource = UICollectionViewDiffableDataSource
      <Section, StoryItem>(collectionView: storyCollectionView) {
        (collectionView: UICollectionView, indexPath: IndexPath, storyItem: StoryItem) -> UICollectionViewCell? in

    print("try creating a collection view cell!")
//创建数据源
self.datasource=UICollectionViewDiffableDataSource(collectionView:self.collectionView){
cv、ip、s英寸
return self.makeCell(cv、ip、s)//返回单元格
}
//如果您有页眉/页脚,请为其提供一个补充视图提供程序
self.datasource.supplementaryViewProvider={cv,种类,ip in
return self.makeSupplementaryView(cv、种类、ip)//返回视图
}
//为数据源提供一些数据(这里,我的数据位于'sections'中)
var snap=NSDiffableDataSourceSnapshot()
一节接一节{
snap.appendSections([section.0])
snap.appendItems(第1节)
}
self.datasource.apply(捕捉、动画差异:false)

Ahh是的,我已经做好了一切准备,但我还没有将任何数据发送到appendItems中。:facepalm表情符号:-谢谢!
// make the data source
self.datasource = UICollectionViewDiffableDataSource<String,String>(collectionView:self.collectionView) { 
    cv,ip,s in
    return self.makeCell(cv,ip,s) // return cell
}
// give it a supplementary view provider if you have headers/footers
self.datasource.supplementaryViewProvider = { cv,kind,ip in
    return self.makeSupplementaryView(cv,kind,ip) // return view
}
// give the data source some data (here, my data is sitting in `sections`)
var snap = NSDiffableDataSourceSnapshot<String,String>()
for section in sections {
    snap.appendSections([section.0])
    snap.appendItems(section.1)
}
self.datasource.apply(snap, animatingDifferences: false)