问题描述:
当页面内容加载失败时展现可以点击重新加载的错误页(点击重新加载使用的是单击手势),当页面重新加载成功出现tableViewCell后,移除错误页,但点击页面仍然响应单击手势,而不是响应cell的点击效果。
解决方案:
1、遵守手势的协议 UIGestureRecognizerDelegate
2、实现其代理方法
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
// 若为UITableViewCellContentView(即点击了tableViewCell),则不截获Touch事件(只解除的是cell与手势间的冲突,cell以外仍然响应手势)
if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"])
{
return NO;
}
// 若为UITableView(即点击了tableView任意区域),则不截获Touch事件(完全解除tableView与手势间的冲突,cell以外也不会再响应手势)
if ([touch.view isKindOfClass:[UITableView class]]
{
return NO;
}
return YES;
}