有没有办法为集合视图单元格连续调用initialLayoutAttributesForAppearingItemAtIndexPath?

时间:2014-08-19 11:50:50

标签: ios objective-c core-animation uicollectionview uicollectionviewlayout

我正在开发一个动画重新加载单元格的UICollectionView。 我在

的布局类中编写了一个动画代码
- (UICollectionViewLayoutAttributes*)initialLayoutAttributesForAppearingItemAtIndexPath:(NSIndexPath *)itemIndexPath 

它的作品非常完美我只想知道的是,我可以在某种程度上引入细胞动画的延迟,这样它就像第一个细胞到达它的位置而不是第二个细胞到目前为止。

有没有具体的方法来实现这个目标?

2 个答案:

答案 0 :(得分:1)

如果您想要实现的外观动画是帧动画,则可以调整初始起始位置,而不是添加延迟。

假设您希望您的细胞从右侧飞入。对于第一个单元格,您可以将初始偏移设置为500px,将第二个600px设置为第三个700px,依此类推。即使它们都在同一时间开始动画,它们也会连续到达它们的位置。

希望这有帮助。

答案 1 :(得分:1)

不幸的是,该框架并非旨在以这种方式工作。我不会直接为框架设置动画 - 这是一条导致疼痛的黑暗路径。您基本上需要将一个模型添加到支持集合视图,等待和重复的数据源中。它不应该太难,但它有点hacky。