UICollectionViewCompositionalLayout 部分内容插入错误
UICollectionViewCompositionalLayout section content insets bug
我注意到在处理正交部分内的大内容插入时 UICollectionViewCompositional
布局的错误行为。
考虑一下这个简单的布局
let itemSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .fractionalHeight(1))
let item = NSCollectionLayoutItem(layoutSize: itemSize)
let groupSize = NSCollectionLayoutSize(widthDimension: .absolute(200), heightDimension: .absolute(200))
let group = NSCollectionLayoutGroup.horizontal(layoutSize: groupSize, subitems: [item])
let section: NSCollectionLayoutSection = .init(group: group)
section.orthogonalScrollingBehavior = .continuous
section.contentInsets = .init(top: 0, leading: 200, bottom: 0, trailing: 0)
section.interGroupSpacing = 10
注意:
- 组宽度为
.absolute(200)
- 前导内容插入的部分是 200
问题是当前导部分内容插入等于或大于组宽度(在本例中为 200)时,最后一个单元格在section disappear(见下面的 table)。
此行为在 iOS 13.7、14.4 和 14.5 中似乎相同。我没有测试其他版本。
section.contentInsets.leading < 200 ✅
section.contentInsets.leading >= 200 ❌
最后一个单元格(5 号)正确可见
最后一个单元格(5 号)消失了,留下一片空白 space
你怎么看?
我是不是哪里做错了,还是应该向 Apple 报告?
谢谢
看起来这是 UIKit 中的错误。
同一个应用程序在 iOS 15 beta 和 Xcode 13.
上正常运行
我注意到在处理正交部分内的大内容插入时 UICollectionViewCompositional
布局的错误行为。
考虑一下这个简单的布局
let itemSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1), heightDimension: .fractionalHeight(1))
let item = NSCollectionLayoutItem(layoutSize: itemSize)
let groupSize = NSCollectionLayoutSize(widthDimension: .absolute(200), heightDimension: .absolute(200))
let group = NSCollectionLayoutGroup.horizontal(layoutSize: groupSize, subitems: [item])
let section: NSCollectionLayoutSection = .init(group: group)
section.orthogonalScrollingBehavior = .continuous
section.contentInsets = .init(top: 0, leading: 200, bottom: 0, trailing: 0)
section.interGroupSpacing = 10
注意:
- 组宽度为
.absolute(200)
- 前导内容插入的部分是 200
问题是当前导部分内容插入等于或大于组宽度(在本例中为 200)时,最后一个单元格在section disappear(见下面的 table)。 此行为在 iOS 13.7、14.4 和 14.5 中似乎相同。我没有测试其他版本。
section.contentInsets.leading < 200 ✅ | section.contentInsets.leading >= 200 ❌ |
---|---|
最后一个单元格(5 号)正确可见 | 最后一个单元格(5 号)消失了,留下一片空白 space |
你怎么看? 我是不是哪里做错了,还是应该向 Apple 报告?
谢谢
看起来这是 UIKit 中的错误。 同一个应用程序在 iOS 15 beta 和 Xcode 13.
上正常运行