我正在尝试创建这样一个效果: 在更改UICollectionView的框架大小的同时,改变其布局。
最初,collectionView布局呈现为全屏的“缩略图”画廊样式。
将框架调整为狭长条后,我想呈现“胶片带”样式的布局。
两种布局都能独立正常工作。
我尝试了类似于以下代码:
[UIView animateWithDuration:1
delay:0.0
options:UIViewAnimationOptionCurveEaseOut
animations:^{
self.collectionview.frame = newFrame; // animate the frame size
}
completion:^(BOOL finished) {
[self.collectionView.collectionViewLayout invalidateLayout];
[self.collectionView setCollectionViewLayout:filmstriplayout animated:YES]; // now set the new layout
}];
但它看起来非常不流畅,而且未按预期调整大小。
是否有一种方法可以在动画更改的同时同时更改 collectionview 布局和框架大小?
performBatchUpdates:withCompletion:
是不错的,但无法帮助组合动画frame
或contentOffset
的变化。我想要实现平滑地动画缩放反弹,其中我的布局和contentOffset
取决于缩放。 - Benjohn