1

我有这个(子类在哪里layoutUICollectionViewFlowLayout

[layout invalidateLayout];
[self.collectionView setCollectionViewLayout:layout animated:YES]

但似乎持续时间是固定的。更改持续时间的最简单方法是什么?

4

1 回答 1

7

您可以通过以下方式执行此操作:

[UIView animateWithDuration:kAnimationDuration
                      delay:0.0
                    options:UIViewAnimationOptionCurveEaseOut
                 animations:^{
                     [self.collectionView setCollectionViewLayout:layout animated:YES];
                 }
                 completion:nil];

我不确定 Apple 是否在这些动画中使用UIViewAnimationOptionCurveEaseOutUIViewAnimationOptionCurveEaseInOut(或其他选项)。但应该不难发现。

于 2013-10-04T10:02:02.600 回答