swift - 如何对不同的组件使用 scrollViewWillEndDragging?

标签 swift uitableview uicollectionview uikit

我在 TabelViewCell 中有 CollectionView,我正在尝试为 CollectionView 的单元格进行分页和居中。但是当我使用方法时

func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>){}

它适用于 TabelView 和 CollectionView。我知道这些类型继承自 UIScrollView,这就是出现这种情况的原因。要将此方法仅应用于一种类型,需要做什么?

最佳答案

您可以通过检查 scrollView 的类型来做到这一点:

func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
    if scrollView is UITableView {
        // Do your thing for the tableView.
    } else if scrollView is UICollectionView {
        // Do your thing for the collectionView.
    }
}

关于swift - 如何对不同的组件使用 scrollViewWillEndDragging?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53823506/

相关文章:

ios - 在 NSArray 中使用 UIImageViews 填充 UICollectionView 单元格

ios - Swift:自动调整单元格内的高度 UITextView

ios - 403 未根据 Alamofire 的请求提供身份验证凭据

ios - 隐藏在元素后面的 CollectionView 单元格

ios - PrepareForSegue 始终返回索引 0 处的单元格

ios - 在 TableView 单元格之间添加多条对角线连接线的最佳方式

ios - Nib 约束中的 Collection View 单元格未应用

ios - UIPresentationController 在巨大的延迟之后呈现

swift - 出现错误 : Cannot call value of non-function type 'NSURL' 的问题

ios - 重新排序单元格后如何更改 fetchresult Controller 数组中对象的顺序