我有一个UICollectionViewDiffableDataSource这样的:
var data:UICollectionViewDiffableDataSource<Section, Message>!
Run Code Online (Sandbox Code Playgroud)
我像这样定义节标题的布局:
let header = NSCollectionLayoutBoundarySupplementaryItem(
layoutSize: .init(widthDimension: .fractionalWidth(1.0), heightDimension: .estimated(10)),
elementKind: UICollectionView.elementKindSectionHeader,
alignment: .top
)
section.boundarySupplementaryItems = [header]
Run Code Online (Sandbox Code Playgroud)
最后,为了返回我的标头,我有一个返回UICollectionReusableView类似以下内容的函数:
func setupHeaderData() {
data.supplementaryViewProvider = { collectionView, kind, indexPath in
return DateStampBuilder(data: self.data, style: self.style).build(collectionView: collectionView, kind: kind, indexPath: indexPath)
}
}
Run Code Online (Sandbox Code Playgroud)
很棒的是:我可以在我的UICollectionView.
我想要什么:我如何可以选择不显示特定部分的特定标题?
当我尝试nil在以下函数中返回时:
data.supplementaryViewProvider = { collectionView, kind, indexPath in
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'the view returned from -collectionView:viewForSupplementaryElementOfKind:atIndexPath …Run Code Online (Sandbox Code Playgroud) ios uicollectionview swift uicollectionviewcompositionallayout uicollectionviewdiffabledatasource