0

我正在寻找覆盖我的UICollectionViewFlowLayout以导致单元格由于方向更改时更改位置时滑动。我目前所拥有的是纵向3行,横向4行,每当我改变方向时,我能得到的唯一动画就是默认的淡入淡出。ios:动画UICollectionViewCells滑动时更改方向

我一直在寻找使用performBatchUpdates,但我很确定这不是我会找到答案的地方。

我也一直在寻找到layoutAttributesForElementInRectlayoutAttributesForItemAtIndexPath,我认为这是我可以找到答案的地方。我不确定是否需要为单元格创建新属性(可能为previousCenter),并将其用作新动画的起点,或者可以使用performBatchUpdates将新框架作为要更改的值。

为了记录我发现的所有动画问题都是关于如何更改插入和删除项目的动画,这不是我想要做的。

+1

什么是“滑动”? – Zelko

回答

0

尝试

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:( NSTimeInterval)duration { 
    [super willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration]; 
    [self.collectionView reloadData]; 
} 

,然后添加任何你需要在这一点上 “滑” 了。

如果您使用的是flowLayout或其子类,它应该为您自动重新定位单元格。如果您继承了布局,则可能需要调整返回的布局属性以对应旋转。动画应该为你做。