【问题标题】:how to animate itemSize from UICollectionViewFlowLayout?如何从 UICollectionViewFlowLayout 为 itemSize 设置动画?
【发布时间】:2013-09-30 07:39:21
【问题描述】:

我正在使用UICollectionView 在多行和多列上显示一组图形。用户可以使用pinchGesture进行放大/缩小。

当用户放大图表大小增加并且用户缩小图表大小减小。要更改图形的大小,我只需将属性 itemSizeUICollectionViewFlowLayout 更改。效果很好,但我无法使用以下代码为更改设置动画:

    [UIView transitionWithView:self.theCollectionView
                  duration:0.5f
                   options:UIViewAnimationOptionCurveLinear
                animations:^() {
                    _theFlowLayout.itemSize = cellSize;
                }
                completion:nil];

知道如何制作这种变化的动画吗?

问候,

塞巴斯蒂安。

【问题讨论】:

    标签: ios animation uicollectionview


    【解决方案1】:

    您可以使用集合视图的performBatchUpdates 方法,该方法将使您的布局无效并重新查询,并为任何新值设置动画。

    类似这样的:

    _theFlowLayout.itemSize = cellSize;
    [self.theCollectionView performBatchUpdates:nil completion:nil];
    

    很遗憾,您无法控制动画的时间或曲线。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-08
      • 1970-01-01
      相关资源
      最近更新 更多