UIScrollView 滚动时,UITapGestureRecognizer 不点击

Posted

技术标签:

【中文标题】UIScrollView 滚动时,UITapGestureRecognizer 不点击【英文标题】:UITapGestureRecognizer doesn't tap while UIScrollView is scrolling 【发布时间】:2016-12-23 05:20:54 【问题描述】:

基本上我有一个scrollView,上面有另一个视图。 在那个观点上,我还有一个 UITapGestureRecognizer

我正在动画滚动scrollView。但是,在此滚动动画期间,点击手势识别器实际上并不能识别点击。

有什么想法吗?

【问题讨论】:

显示你的动画代码。 【参考方案1】:

没有代码我们无法提供建议,但尝试使用以下代码可能对您有用!

tapGestureRecognizer.numberOfTapsRequired = 1
tapGestureRecognizer.isEnabled = true
tapGestureRecognizer.cancelsTouchesInView = false

【讨论】:

【参考方案2】:

为获得最佳实践,您可以通过添加UIButton 来使用按钮操作而不是UITapGesture。原因很简单,管理按钮远比UITapGesture 简单得多,但我并不是说一直使用UIButton 而不是点击手势,这完全符合您的要求。

根据您的情况,添加此行

view.userInteractionEnabled = false

并确保您的视图被添加到UITapGesture 并且UITapGesture 方法在您的代码工作中正确实现。

要了解更多基础知识,请参考这两个教程,

First tutorial | Second tutorial

如果您仍然遇到任何问题,请告诉我。

【讨论】:

以上是关于UIScrollView 滚动时,UITapGestureRecognizer 不点击的主要内容,如果未能解决你的问题,请参考以下文章

当另一个 UIScrollView 滚动时停止动画 UIScrollView

UIScrollView:仅在允许时滚动

为啥显示键盘时 UIScrollView 不滚动?

触摸某些元素时 UIScrollView 不滚动

UIScrollView 滚动时跳跃

IOS。当 UIScrollView 滚动时应用另一个滚动动画[关闭]