1.首先排除表格的父试图是否能交互(userInteractionEnabled);
2.其次排除表格是否能交互(userInteractionEnabled);
3.再次排查表格是否被其它透明可交互控件遮盖(Xcode强大的多视图立体分层显示View UI Herarchy)。
4.是否表格超过父试图的范围(Xcode强大的多视图立体分层显示View UI Herarchy)。
5.若以上都没有问题,那么很可能是你的表格的父试图设置了手势,手势的优先级高于表格点击事件。在容器页面(一个容器包含多个控制器页面)更容易出现该问题。
解决办法:对表格添加失效的手势事件。
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)];
tap.numberOfTapsRequired = 1; // 单击
tap.cancelsTouchesInView = NO;
[_collectionView addGestureRecognizer:tap];