Animation 设置UICollectionViewCell动画:同时滚动到并调整大小
我试图让UICollectionViewCell进行动画调整,同时让集合视图将单元格滚动到集合视图视口的顶部 当我这样做的时候Animation 设置UICollectionViewCell动画:同时滚动到并调整大小,animation,uikit,uicollectionview,uicollectionviewcell,uicollectionviewlayout,Animation,Uikit,Uicollectionview,Uicollectionviewcell,Uicollectionviewlayout,我试图让UICollectionViewCell进行动画调整,同时让集合视图将单元格滚动到集合视图视口的顶部 当我这样做的时候 - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath { [self.collectionView scrollToItemAtIndexPath:indexPath atScrollPosition:
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
[self.collectionView scrollToItemAtIndexPath:indexPath atScrollPosition:UICollectionViewScrollPositionTop animated:YES];
[collectionView performBatchUpdates:nil completion:nil];
}
与
滚动发生在调整动画大小之前
如果我在performbatchUpdate中调用scrollToItemAtIndexPath,比如
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
[collectionView performBatchUpdates:^{
[self.collectionView scrollToItemAtIndexPath:indexPath atScrollPosition:UICollectionViewScrollPositionTop animated:YES];
} completion:nil];
}
它大部分时间都不起作用
谢谢
-Eric实现这种效果的最佳方法是简单地将UICollectionViewFlowLayout子类化,并根据选定的单元格调整单元格布局属性
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
[collectionView performBatchUpdates:^{
[self.collectionView scrollToItemAtIndexPath:indexPath atScrollPosition:UICollectionViewScrollPositionTop animated:YES];
} completion:nil];
}