swift - 同时接收scrollViewDidScroll和UIGestureRecognizer触摸事件

标签 swift uiscrollview uigesturerecognizer

我有一个 UIScrollView,上面附加了 UIPanGestureRecognizer。

在拖动时,我想触发手势识别器或 scrollViewDidScroll,或者有时在一次拖动中同时触发两者。然而,手势识别器窃取了触摸事件,因此 ScrollView 无法滚动。

有没有办法将单个触摸事件发送到 scrollViewDidScroll 手势识别器?

(我尝试对 ScrollView 进行子类化并覆盖 gestureRecognizer(UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer:UIGestureRecognizer),没有效果,我认为是因为 scrollViewDidScroll 不依赖于手势识别器。)

最佳答案

事实证明collectionView有一个panGestureRecognizer属性。问题解决了。

关于swift - 同时接收scrollViewDidScroll和UIGestureRecognizer触摸事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36729292/

相关文章:

ios - 我可以使用自动布局在 UIScrollView 中包含灵活的空间吗?

ios - 处理多个 Tap 事件

objective-c - UIScrollView 每次滚动时调用 layoutSubviews()

ios - 导航到第二个 View Controller 时选项卡栏隐藏

ios - 每当 clocationmanager 更新位置时执行的函数

swift - 如何在 swift 中创建像 Sorted() 这样将接收者作为参数的方法?

ios - 使用后从overlay UIView转发触摸事件到下方的UIScrollView

ios - UIPanGestureRecognizer - 仅垂直或水平

ios - 触摸已移动 :withEvent: and UIRotationgestureRecognizer don't work together

swift - 使用 Swift 和 XCTest 等到对象在屏幕上不可见