Ios UIView仅手柄双击
我希望我的视图只处理双击手势。其余的手势应该转发到superview。如何做到这一点? 我尝试了Ios UIView仅手柄双击,ios,swift,uigesturerecognizer,uitouch,Ios,Swift,Uigesturerecognizer,Uitouch,我希望我的视图只处理双击手势。其余的手势应该转发到superview。如何做到这一点? 我尝试了pointsInsideoverride技巧,但它转发了所有触摸 编辑: 此外,superview可能会也可能不会决定处理触摸(它可能会决定将触摸转发到其他视图)。 实际上,我试图实现的是在最初的窗口上设置一个只对双击做出反应的ui窗口,其余的触摸都应该通过。将双击手势识别器添加到超级视图中,然后,在手势识别器的代理中,实现手势识别器应开始,仅当它在您的视图框架内时才返回true。通过这种方式,您可以
pointsInside
override技巧,但它转发了所有触摸
编辑:
此外,superview可能会也可能不会决定处理触摸(它可能会决定将触摸转发到其他视图)。
实际上,我试图实现的是在最初的窗口上设置一个只对双击做出反应的
ui窗口,其余的触摸都应该通过。将双击手势识别器添加到超级视图中,然后,在手势识别器的代理中,实现手势识别器应开始
,仅当它在您的视图框架内时才返回true。通过这种方式,您可以在视图中将userInteractionEnabled
设置为false,一切都可以正常工作。除双击外,视图对触摸是透明的。无需任何命中测试或点内覆盖。将双击手势识别器添加到超级视图中,然后在手势识别器的代理中执行手势识别器应开始
,仅当它在视图框架内时才返回true。通过这种方式,您可以在视图中将userInteractionEnabled
设置为false,一切都可以正常工作。除双击外,视图对触摸是透明的。不需要任何hitTest或pointInside覆盖。您的回答确实回答了我的问题。然而,一开始我把它简化了一点。现在我添加了更多的上下文。同样的想法也可以奏效。在您的ui窗口上,将userInteractionEnabled
设置为false,并将手势识别器添加到它下面的窗口中。我会尝试这样做,如果成功,我会接受您的答案。不确定它是否能工作,因为下面的窗口中有许多子视图可能会有触感。你的答案确实回答了我的问题。然而,一开始我把它简化了一点。现在我添加了更多的上下文。同样的想法也可以奏效。在您的ui窗口上,将userInteractionEnabled
设置为false,并将手势识别器添加到它下面的窗口中。我会尝试这样做,如果成功,我会接受您的答案。不确定它是否能工作,因为在下面的窗口中有许多子视图可能会有触感。