UITapGestureRecognizer-单击和双击
我正在尝试向UITapGestureRecognizers视图添加2 ,一个用于单击,一个用于双击事件。单抽头识别器正在按预期运行(单独运行)。但是我似乎无法使双击识别器正常工作。 已经尝试具有类似性质的实验: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]; …