我正在使用 UICollectionView
在多行和多列上显示一组图形。用户可以使用pinchGesture
来放大/缩小。
当用户放大时,图形尺寸会增加,而用户缩小时,图形尺寸会减小。要更改图形的大小,我只需更改 UICollectionViewFlowLayout
中的 itemSize
属性。它工作得很好,但我无法使用以下代码对更改进行动画处理:
[UIView transitionWithView:self.theCollectionView
duration:0.5f
options:UIViewAnimationOptionCurveLinear
animations:^() {
_theFlowLayout.itemSize = cellSize;
}
completion:nil];
知道如何动画化此更改吗?
问候,
塞巴斯蒂安。
最佳答案
您可以使用 Collection View 的 performBatchUpdates
方法,该方法将使您的布局无效并重新查询,从而为任何新值设置动画。
类似这样的:
_theFlowLayout.itemSize = cellSize;
[self.theCollectionView performBatchUpdates:nil completion:nil];
不幸的是,您无法控制动画的时间或曲线。
关于ios - 如何从 UICollectionViewFlowLayout 为 itemSize 制作动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19088861/