我有这个(layout
是UICollectionViewFlowLayout
子类):
[layout invalidateLayout];
[self.collectionView setCollectionViewLayout:layout animated:YES]
但似乎持续时间是固定的。改变持续时间的最简单方法是什么?
答案 0 :(得分:6)
您可以通过以下方式执行此操作:
[UIView animateWithDuration:kAnimationDuration
delay:0.0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
[self.collectionView setCollectionViewLayout:layout animated:YES];
}
completion:nil];
我不确定Apple是否在这些动画中使用UIViewAnimationOptionCurveEaseOut
或UIViewAnimationOptionCurveEaseInOut
(或其他一些选项)。但要发现它应该不难。