我正在为使用自定义 UITableViewCell 子类的 UITableView 处理自定义滑动事件。我UIGestureRecognizerDelegate
在我的标题中包含了viewDidLoad:
UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipe:)];
swipeLeft.direction = UISwipeGestureRecognizerDirectionLeft;
swipeLeft.numberOfTouchesRequired = 1;
[self.tableView addGestureRecognizer:swipeLeft];
我的 swipeLeft 方法如下所示:
-(void)didSwipe:(UISwipeGestureRecognizer *)recognizer {
if (recognizer.state == UIGestureRecognizerStateEnded)
{
CGPoint swipeLocation = [recognizer locationInView:self.tableView];
NSIndexPath *swipedIndexPath = [self.tableView indexPathForRowAtPoint:swipeLocation];
NSDictionary *clip = [self.clips objectAtIndex:swipedIndexPath.row];
NSLog(@"Swiped!");
}
}
这是一种工作,但滑动必须非常精确。几乎不可能精确。
我几乎通过使用 UIPanGestureRecognizer 来让它工作,但不幸的是,它与使用全局平移手势识别器的全局侧抽屉组件(感兴趣的人为 ECSlidingViewController)并没有很好地配合。
有没有办法解决?任何帮助将不胜感激,因为我一直在谷歌搜索和浏览 SO 几个小时以寻找解决方案。