禁止UIScrollView捕获子视图的触摸事件

4

我有一个用自定义 UIView 覆盖的 UIScrollView,需要紧急监听发生在其内部的所有触摸事件。

起初,我只收到了 touchesBegan:touchesCancelled: 事件。没有 touchesMoved:,也没有 touchesEnded:。实际上,所有拖动手势都被上述的 UIScrollView 取消了。通过以下设置解决了这个问题:

_scrollView.canCancelContentTouches = NO;

现在,UIView上第一次触摸的时间长度会影响其行为。如果时间很短,那么相对拖动会像UIScrollView一样进行管理。如果时间很长,则我会在我的UIView中获取touchesMoved:事件。

我想要的是始终在我的UIView中接收touchesMoved:。我该怎么做?

1个回答

5

你是否尝试过修改你的UIScrollViewdelaysContentTouches属性?我之前遇到类似的问题,通过这种方法解决了它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接