我有一个 cutsom UITableViewCell 实现。我已经为 UIPanGestureRecognizer 注册了 UITableViewCell 的这个子类,我用它来向右或向左滑动单元格。
// 在 UITableViewCell 子类中:
UIGestureRecognizer* recognizer =
[[UIPanGestureRecognizer alloc] initWithTarget:
self
action:@selector(handlePan:)];
recognizer.delegate = self;
[self addGestureRecognizer:recognizer];
recognizer.cancelsTouchesInView = NO;
现在,当用户在屏幕上“向上”滑动两根手指时,我想展示一个视图控制器。所以,我在 tableview 中添加了一个 UISwipeGestureRecognizer。
// 包含 tableview 引用的视图控制器中的代码。
UISwipeGestureRecognizer *swipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleViewsSwipe:)];
[swipe setDirection:UISwipeGestureRecognizerDirectionUp];
[swipe setDelaysTouchesBegan:NO];
[[self tableView ]addGestureRecognizer:swipe];
swipe.cancelsTouchesInView= YES;
[swipe setNumberOfTouchesRequired:2];
swipe.delegate = self;
self.tableView.multipleTouchEnabled = YES;
但是当我在屏幕上用两根手指滑动时,会触发平移手势。我该如何解决这个问题?