美文网首页
TableView didSelectRowAtIndexPat

TableView didSelectRowAtIndexPat

作者: 韩叨叨 | 来源:发表于2018-08-16 11:31 被阅读37次

是因为被被其他控件覆盖了。

比如说:我在cell上有一个按钮,点击之后会弹出popView,popView是一个tableview,这个tableView的didSelectAtIndexPath会执行,但是下面那个主的TableView的代理方法就不会执行了。

解决方法:
1、父类事件设置代理

UIGestureRecognizer *tapGesture  
tapGesture.delegate = self;

2、覆盖方法

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
  if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) {
    return NO;
   }
  return  YES;
}

相关文章

网友评论

      本文标题:TableView didSelectRowAtIndexPat

      本文链接:https://www.haomeiwen.com/subject/abmnbftx.html