使用动画动态调整UICollectionViewCell的高度

时间:2014-03-01 04:53:32

标签: ios animation uicollectionview uicollectionviewcell

我希望用动画扩展我的collectionview中顶部单元格的高度。问题是当我检测到单元格上的点击时,我尝试设置高度动画并在委托中设置新高度: - collectionView:layout:sizeForItemAtIndexPath:indexPath。问题我看到在我的收集流布局失效后立即刷新,动画发生在后面。我想要的效果是顶部单元格将扩展设置为新高度的动画,并将动画下方的行与动画一起推动。

我只使用一个包含多行的部分。我应该尝试使用两个部分并将顶部单元格放在第一部分中,剩下的部分放在第二部分中吗?那么我可以将第二部分与第一部分的高度一起设置动画吗?

1 个答案:

答案 0 :(得分:0)

您需要执行以下三个步骤:

1.使您的collectionViewLayout无效

self.collectionView.collectionViewLayout.invalidateLayout()

2.Reroad desired indexPath或performBatchUpdates块中的所有数据

collectionView.performBatchUpdates({
            self.collectionView.reload(at: DESIRED_INDEXPATH)
        }, completion: nil)

3.返回以sizeForItemAtIndexpath委托方法

计算的新高度