我目前有一个设置:
一个 RootVC,在 self.view 上有一个 UIPanGestureRecognizer。然后 RootVC 有一个子 UITableViewController,因此 UITableViewController.view 是 self.view 的子视图。
UITableViewController 上的单元格也有手势识别器,可以让它们横向滑动。当 UITableViewController 本身是根视图控制器时,这非常有效。
我的问题是我试图将特定手势从 self.view 手势识别器传递到表格单元格。我试过代表:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
和
-(BOOL)gestureRecognizerShouldBegin:(UIPanGestureRecognizer *)gestureRecognizer
我可以正确识别我想在下面发送的手势并在该实例中返回 NO 但这似乎取消了手势而不是将其传递给子视图。
我知道我可以打电话
[self.view.subviews[0] gestureShouldBegin:gestureRecognizer];
但是因为它是表格视图单元格,我无法确定手势也应该发送到哪个单元格。
我一直在想像
[[self.childViewControllers[0] cellForRowAtIndexPath:indexPath] gestureShouldBegin:gestureRecognizer];
会工作,但我不知道如何确定正确的 indexPath ..
有任何想法吗?