只允许某个UIGestureRecognizer立即执行

时间:2011-12-30 22:13:34

标签: objective-c ios uitableview uigesturerecognizer

我想阻止UIGestureRecognizers同时工作,所以我实现了下面的方法。但是,我只想允许otherGestureRecognizer在gestureRecognizer尝试同时识别时自行处理。

请告诉我如何实现这一目标?

顺便说一句,这是为了防止在tableView处于“删除模式”时平移(拖动)视图。

- (BOOL) gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
    gestureRecognizer.enabled = NO;
    return NO;
}

1 个答案:

答案 0 :(得分:0)

您的问题有点不清楚,但我认为您可能正在寻找:

- (void)requireGestureRecognizerToFail:(UIGestureRecognizer *)otherGestureRecognizer

来自UIGestureRecognizer docs

  

此方法与另一个手势识别器建立关系,延迟接收者从UIGestureRecognizerStatePossible转换。接收器转换到的状态取决于otherGestureRecognizer发生的情况: