我有一个使用流布局的UICollectionView。
最初它在iPad屏幕上显示小细胞,大约5 X 5。
我想要做的是顺利地改变到接近全屏的单元格大小,单元格具有更大,略有不同的布局。
----------------
| |---| |---| |
| | | | | |
| |---| |---| |
| |
| |---| |---| |
| | | | | |
| |---| |---| |
----------------
transitions to..
----------------
| |---------| |
| | | |
| | | |
| | | |
| |---------| |
| |
| |---------| |
----------------
目前我使用布尔showLarge
,当用户点击(didSelectItemAtIndexPath
)
然后我重新加载数据。
self.showLarge = YES;
[self.collectionView reloadData];
在我的cellForItemAtIndexPath
中,我根据布尔值加载了相应的单元格:
if (!self.showLarge)
{
SmallCell *smallCell ..
etc
return smallCell;
} else
{
LargeCell *smallCell ..
etc
return largeCell;
}
然而,这是一个突然的过渡。
如何顺利动画到新的自定义UICollectionViewCell?
答案 0 :(得分:2)
您可以使用其他UICollectionViewFlowLayout
,然后即时更改集合视图的布局。这将给你一个很好的动画,而不需要重新加载任何东西。