iOS - 使用/传递手势识别器用于视图中的多个表视图或集合视图(Swift)

Posted

技术标签:

【中文标题】iOS - 使用/传递手势识别器用于视图中的多个表视图或集合视图(Swift)【英文标题】:iOS - Use/pass gesture recognizer for multiple Tableviews or Collectionviews in a View(Swift) 【发布时间】:2016-05-19 09:54:14 【问题描述】:

我的视图中有 2 个(圆形)UICollectionviews,它们都可以正常工作,但我想对两个视图都使用 1 次滑动手势,所以当我在顶部 collectionview 上滑动时,底部视图也应该以相同的速度滑动并且反之亦然。实现这一目标的最佳方法是什么?

这是我的 UIViewController:

每当我在此 UIViewController 上的任何位置滚动时,两个集合视图都应该滚动。任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

设置您collectionView 的scrollViewscrollView delegateUICollectionViewUIScrollView 的子类。 使用scrollViewDidScroll 方法。例如,在该方法中,您可以查看一个UICollectionView 中的contentOffset,然后将contentOffset 设置为另一个collectionView's scrollView 为该值。

【讨论】:

ScrollViewDidScroll 只会在滚动完成时被调用,我需要一个在滚动时不断调用的函数以保持它同时平滑移动。我也不能覆盖 scrollView 或者它是我的 UICollectionview 的代表 :( 您找到适合您的答案了吗?谢谢!

以上是关于iOS - 使用/传递手势识别器用于视图中的多个表视图或集合视图(Swift)的主要内容,如果未能解决你的问题,请参考以下文章

如何将手势识别器从一个视图传递到另一个视图

如何在iOS中将触摸传递给手势识别器?

iOS:用于平滑滚动和轻弹视图的手势识别器

iOS 9:在故事板/xib 中设置了手势识别器,以添加到多个视图(不起作用)

在视图上自定义多个手势

Swift 3使用选择器将按钮/手势识别器动作传递给其他功能