0

我有一个 UIViewController,其中有 2 个 UISwipeGestureRecognizers 处理撤消和重做(向右滑动以撤消,向左滑动以重做)。在这个 VC 中,我还有一个 UIView,它跟踪触摸开始/移动/结束以更改另一个 UIView 上的颜色。顺便说一句,撤消/重做与颜色变化有关。

我遇到的问题是,当我在换色器视图中执行触摸事件时,它们有时被解释为滑动并且正在发生撤消/重做。

如何仅为相关 UIView 禁用滑动手势,但保留在 VC 的其他区域执行滑动的能力?

4

1 回答 1

1

让视图控制器成为手势识别器的委托,然后实现这个委托方法:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {

    return touch.view != self.mySubviewToExclude;
}
于 2013-01-20T06:04:50.517 回答