我正在try 向视图添加2 UITapGestureRecognizers
个,一个用于单击,另一个用于双击事件.单击识别器工作正常(自行).但我好像不能让双击识别器工作.
已经try 过cancelsTouchesInView
、delaysTouchesBegan
和delaysTouchesEnded
这样的属性,但仍然不起作用.
当我双击时,单击识别器将始终处于激活状态,双击事件也会发送到超级视图.但自定义双击识别器似乎根本没有收到通知.
文件似乎表明,上面提到的3个属性可以用于此目的.但我只是不确定应该设置什么值,以及在哪个识别器(单识别器、双识别器或两个识别器)上设置.希望熟悉这个的人能帮上忙.
以下是挡路的最新更新代码.
// ****** gesture recognizers ******
- (void)addSingleAndDoubleTapGestureRecognizersToView:(UIView *)view
{
// single tap
UITapGestureRecognizer *singleTapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget: tableViewController action: @selector(handleSingleTapOnView:)];
[singleTapRecognizer setNumberOfTouchesRequired:1];
[view addGestureRecognizer: singleTapRecognizer];
// double tap
UITapGestureRecognizer *doubleTapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget: tableViewController action: @selector (handleDoubleTapOnView:)];
[doubleTapRecognizer setNumberOfTouchesRequired:2];
[singleTapRecognizer requireGestureRecognizerToFail: doubleTapRecognizer];
[view addGestureRecognizer: doubleTapRecognizer];
}
- (void)handleSingleTapOnView:(id)sender
{
}
- (void)handleDoubleTapOnView:(id)sender
{
}