这可能是 中的一个错误UICollectionView
,一旦 Apple 的错误报告网站停止被破坏,我就会报告它。但我想我会把它放在那里,以防万一有人幸运地绕过它。
我有一个UICollectionView
使用UICollectionViewFlowLayout
. 我正在使用UICollectionViewDelegateFlowLayout
协议为每个单元格指定 itemSize,但我正在使用布局的sectionInset
属性来设置部分插图。
我需要为集合视图的部分插图设置动画。为此,我正在创建一个新UICollectionViewFlowLayout
实例,设置其 sectionInset 属性,并调用-setCollectionViewLayout:animated:
collectionView。
问题是:如果集合视图的一部分包含大小不同的项目,则该部分不会更新为新的sectionInset
. 如果我只使用布局的 itemSize 属性,或者如果我从UICollectionViewDelegateFlowLayout
方法返回静态大小,则该部分的动画效果正确。只有当该部分包含不更新的不同高度的项目时。
似乎很明显是一个错误,但我仍然对我做错了什么的可能性持开放态度。UICollectionView
非常灵活,文档也不是很好,所以也许我缺少一些东西。
其他人看到这个问题吗?有幸过去吗?
更新
我发现发生此问题的情况比我上面所说的更具体。违规部分中的项目必须足够宽,以确保垂直滚动集合视图的每行只有一个项目。在这些情况下,如果节中项目的宽度或高度不统一,则节的 sectionInset 不会正确更新