检测UITableView SECTION上的触摸?

时间:2012-12-13 09:44:55

标签: iphone objective-c ios uitableview uitapgesturerecognizer

如何在表格视图部分检测用户触摸?

我尝试了UITapGestureRecognizertouchesEnded:但没有成功。

触摸结束示例

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
  UITouch *Touch = [[event allTouches] anyObject];
  if (CGRectContainsPoint([_Sec0 frame], [Touch locationInView:_Table])) {
    NSLog(@"SECTION 0");
  } else if (CGRectContainsPoint([_Sec1 frame], [Touch locationInView:_Table])) {
    NSLog(@"SECTION 1");
}

UITapGestureRecognizer示例

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(Tapped:)];
[_Sec0 addGestureRecognizer:tap];
[tap release];

什么都没发生。
除了在桌子上之外,在视图的任何地方都会调用Touch 点击手势不会被调用。

任何想法?

编辑:当然,有代表。

感谢。

2 个答案:

答案 0 :(得分:2)

UITableView正在消耗触摸,而不是将它们发送到响应者链。

这意味着触摸不会通过下方的UIView并触发您的功能。

我发现这个问题对你有帮助......

Stop UITableView consuming touch events so sliding menu in parent view can detect horizontal swipes

答案 1 :(得分:0)

什么意思触及部分?您可以使用UITableViewDelegate检测单元格和标题的选择。它可以帮到你吗?