如何动画 UICollectionViewCell 扩展?

Posted

技术标签:

【中文标题】如何动画 UICollectionViewCell 扩展?【英文标题】:How to animate UICollectionViewCell expansion? 【发布时间】:2017-11-14 16:55:06 【问题描述】:

我有一个 UICollectionView。当用户点击一个单元格时,我必须扩大单元格的大小。我就是这样子的,

-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath 
    [collectionView performBatchUpdates:^
        isExpandedMode = true;
        expandedPosition = indexPath.row;
        [self.collectionView reloadItemsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil]];
     completion:^(BOOL finished) 

    ];

现在我在这里更新单元格大小,

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
    if(isExpandedMode && expandedPosition == indexPath.row)
        CGFloat screenWidth = 568.0;
        CGFloat screenHeight = 293.0;
        return CGSizeMake(screenWidth, screenHeight);
    
    else
        CGFloat screenWidth = 172.0;
        CGFloat screenHeight = 293.0;
        return CGSizeMake(screenWidth, screenHeight);
    

现在我想对单元格的展开应用动画,这段代码在哪里写?

【问题讨论】:

【参考方案1】:

如果您希望更改动画,请将它们放在对 performBatchUpdates:completion: 的调用中

【讨论】:

以上是关于如何动画 UICollectionViewCell 扩展?的主要内容,如果未能解决你的问题,请参考以下文章

点击时如何在 UICollectionViewCell 中制作此动画?

UICollectionviewCell 动画

UICollectionViewCell 带有约束的动画

如何将 UITapGestureRecognizer 添加到 UICollectionViewCell 中的图像

UICollectionViewCell 展开动画

自定义 UICollectionViewCell contentView 动画