UICollectionView deleteItemsAtIndexPaths不会正确地为补充视图设置动画

时间:2013-03-14 17:38:42

标签: ios uicollectionview

(下面更新)

当我从我的集合视图中的某个部分删除项目时(例如,第0部分),我发现补充视图(在这种情况下来自UICollectionViewFlowLayout的标题)会弹出到位,因为来自第0部分的单元格会生成动画,并且'后面部分的复制'与它们一起动画以匹配弹出的部分。

当然,那些流行的可能是'重复',但它并不重要。这就像集合视图可以看到未来!然后赶上自己。这就是动画的感受。

你知道是否有一些怪癖或错误或容易修复来抑制这个额外的弹出补充视图?

更新:我注意到这也发生在细胞上,而不仅仅是切片上,而且它似乎会“加倍”屏幕上的底部几个细胞和部分。当我从零部分删除单元格时,其下方的一些部分和单元格可以正常生成动画而不会重复,但超出某一点时,它们会弹出。约束问题?

1 个答案:

答案 0 :(得分:2)

这是UICollectionViewFlowLayout的错误。无论出于何种原因,UICollectionViewFlowLayout都无法正确显示屏幕上不存在的单元格。

我已经做了两个解决这个问题的解决方法,但没有一个完全解决它。第一种是人为地增加集合视图的框架,以便创建动画所需的单元格,从而在数据更改时正确动画。这有点像黑客,并不适用于所有情况。

另一种选择是从头开始编写自己的流程布局。这对我有用,复杂性完全取决于你的布局有多复杂。以下是我用于编写自己的flowlayout的示例:https://github.com/chiahsien/UICollectionViewWaterfallLayout