我有一个视图(父级)和一个子视图(子级)。孩子是一个UIControl,响应UIControlEventTouchDownInside,父母有一个滑动识别器。我想抓住滑动,即使他们从孩子开始。
问题:如何识别水龙头之前的滑动?有没有办法告诉iphone父母的手势在孩子的手势之前来了?
感谢您的帮助!
修改 我刚把孩子改成了UIControl(而不是使用了tap识别器)。我不确定这对这个问题的答案有多重要,但我认为无论如何我都会提到它。
修改2
为了回答这两个答案,我再次向孩子添加了点击识别器,并尝试延迟(并且失败)点击识别,以便我可以在包含孩子的大视图(父母)上滑动。到目前为止没有运气。
编辑3
我真的想让孩子保持UIControl并使用UITouchDownInside而不是点击识别器,因为我想使用向下事件而不是向上事件。< / p>
编辑4
现在检测到滑动,但在孩子中,没有检测到以下任何一种: UIControlEventTouchDragOutside,UIControlEventTouchDragExit,UIControlEventTouchCancel 我至少需要其中一个来检测用户何时没有意味着点击孩子:/
答案 0 :(得分:0)
检查UIGestureRecognizer中的- (void)requireGestureRecognizerToFail:(UIGestureRecognizer *)otherGestureRecognizer
。要点按,滑动手势必须失败。
答案 1 :(得分:0)
您可以使用[swipeGesture delaysTouchesBegan]消息来延迟传递给子控件的触摸事件。