是因为被被其他控件覆盖了。
比如说:我在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;
}
本文探讨了当一个控件的事件被另一个控件覆盖时的问题,例如在cell上的按钮触发popView后,主TableView的代理方法不再响应。文章提供了两种解决方案:一是通过设置父类事件代理,二是覆盖特定的方法来实现。
729

被折叠的 条评论
为什么被折叠?



