自定义 UICollectionView 单元格滑动动画

Posted

技术标签:

【中文标题】自定义 UICollectionView 单元格滑动动画【英文标题】:Custom UICollectionView Cell Swipe Animation 【发布时间】:2017-09-20 09:52:13 【问题描述】:

有谁知道如何实现这个动画或具有类似功能的库的最佳方法?我假设它可以通过仿射变换来完成。但也许有人知道一些例子。

【问题讨论】:

按照我的说法是tableview。对于这种类型的动画,您可以获取 github 库。 @dahiya_boy 我假设这个 UICollectionView 因为单元格之间有很大的空间,通过 UICollectionView 很容易实现。你有这些库的链接吗? 我从未在UICollectionView 中看到过这个东西。但是对于UITableView,您可以在 google -> tableview swipe delete cell custom animation github 上搜索。如果您没有找到与您的需求相关的任何内容,那么您可能需要创建自己的库。 【参考方案1】:

在 tableView 上,您可以使用 editActionForRowAt 函数(您可以在此处阅读更多相关信息 https://developer.apple.com/documentation/uikit/uitableviewdelegate/1614956-tableview),但因为您使用的是集合视图,所以您必须自己完成。

为每个单元格添加一个 UIPanGestureRecognizer 并根据平移手势制作动画。

像这样:

func setupSwipeGesture() 
        swipeGesture = UIPanGestureRecognizer(target: self, action:#selector(swiped(_:)))
        swipeGesture.delegate = self

        self.addGestureRecognizer(swipeGesture)
    

func swiped(_ gestureRecognizer: UIPanGestureRecognizer) 
       let xDistance:CGFloat = gestureRecognizer.translation(in: self).x
       // do your animation

【讨论】:

以上是关于自定义 UICollectionView 单元格滑动动画的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 2 个或更多自定义单元格创建自定义 UICollectionView?

UICollectionView 椭圆形自定义单元格

如何在 UICollectionView 中有自定义单元格

UICollectionView 单元格的自定义委托 - 自定义按钮不起作用

点击单元格按钮时如何更新单元格滑块的值?

自定义选择视图的 UICollectionView 单元格出列问题