繁体   English   中英

如何识别superview中的手势?

[英]How to recognise gesture in superview?

我有一个视图(父)和一个子视图(子)。 child是一个UIControl,响应UIControlEventTouchDownInside,parent有一个swipe识别器。 即使他们从孩子开始,我也想抓住他们。

问题:如何识别点击前的滑动? 有没有办法告诉 iphone 父母的手势先于孩子的手势?

谢谢你的帮助!

编辑我只是将孩子更改为 UIControl(而不是使用点击识别器)。 我不确定这对这个问题的答案很重要,但我想我还是会提到它。

编辑 2

作为对这两个答案的回应,我再次向孩子添加了点击识别器,并尝试延迟(并失败)点击识别,以便我可以在包含孩子的大视图(父级)上滑动。 到目前为止没有运气。

编辑 3

我真的很想让孩子成为 UIControl 并使用 UITouchDownInside 而不是点击识别器,因为我想使用向下事件而不是向上事件。

编辑 4

现在检测到滑动,但在孩子中,没有检测到以下内容:UIControlEventTouchDragOutside、UIControlEventTouchDragExit、UIControlEventTouchCancel,我需要其中至少一个来检测用户何时实际上并不打算点击孩子:/

检查 UIGestureRecognizer 中的- (void)requireGestureRecognizerToFail:(UIGestureRecognizer *)otherGestureRecognizer 要点击,滑动手势必须失败。

您可以使用 [swipeGesture delaysTouchesBegan] 消息来延迟传递给子控件的触摸事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM