2013-03-25 54 views
0

我有一个恼人的问题。UITapGestureRecognizer双击放慢发布

我” M增加了手势识别:

UITapGestureRecognizer* tapGesture =[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(DoubleClick:)]; 
tapGesture.numberOfTapsRequired = 2; 
[self.view addGestureRecognizer:tapGesture]; 

这个工作,但是当我只需点击一下,这是我的观点的任何控制,将‘释放’是缓慢的。即UIButton的释放速度比平常慢。 UIView中的所有控件都会发生同样的情况。 touchesEnded:函数被延迟调用。

当我使用tapGesture.numberOfTapsRequired = 1时,它工作正常。不过,我想双击,而不是单击。

请指教。 Thx。

回答

2

当点击并放开一次,你怎么知道它是单击还是只是双击的前半部分?

答:你等。如果第二次敲击,它就是双击。如果经过一段时间并且没有第二次敲击,那么这是一次敲击。查看delaysTouchesEndedUIGestureRecognizer了解更多信息。

我通过创建不会相互冲突的手势来解决此问题。 “双手轻敲”和“单指轻敲”不会造成延迟,因为您会知道在手势结束之前使用了多少手指。

+1

好的,但我期待单点击将被传递到我的视图内的其他控件。好的,我通过实施单击并检测点击我自己之间的时间来修复它。 – Michael 2013-03-25 17:46:10