小编Pra*_*sad的帖子

UICollectionViewCompositionalLayout 的粘性标题不稳定

我正在尝试使用最新的 UICollectionViewCompositionalLayout 使用 UICollectionViewDiffableDataSource 显示分页数据。我想在该部分上方显示一个粘性标题,即使在从网络加载下一页数据时,该标题也始终保留在顶部。我注意到粘性标题没有按预期工作,而是在后台下载数据时感觉不稳定并应用新的快照..我能够使用苹果在此处共享的示例应用程序重现此问题

这是重现该问题的代码:

func layout() -> UICollectionViewLayout {
    let itemSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1.0),
                                         heightDimension: .fractionalHeight(1.0))
    let item = NSCollectionLayoutItem(layoutSize: itemSize)

    let groupSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1.0),
                                          heightDimension: .absolute(44))
    let group = NSCollectionLayoutGroup.horizontal(layoutSize: groupSize, subitems: [item])

    let section = NSCollectionLayoutSection(group: group)
    section.interGroupSpacing = 5
    section.contentInsets = NSDirectionalEdgeInsets(top: 0, leading: 10, bottom: 0, trailing: 10)

    let sectionHeader = NSCollectionLayoutBoundarySupplementaryItem(
        layoutSize: NSCollectionLayoutSize(widthDimension: .fractionalWidth(1.0),
                                          heightDimension: .estimated(44)),
        elementKind: sectionHeaderElementKind,
        alignment: .top)
    sectionHeader.pinToVisibleBounds = true
    sectionHeader.zIndex = 2
    section.boundarySupplementaryItems = [sectionHeader]

    let layout …
Run Code Online (Sandbox Code Playgroud)

swift ios13 nsdiffabledatasourcesnapshot uicollectionviewcompositionallayout

6
推荐指数
0
解决办法
1714
查看次数