解决在UITableViewCell 上嵌套ColltionView 除了ColltionViewCell以外其他ColltionView空白页 不相应tableViewCell点击事件
可以使用响应链方案,让事件传递到tableview 的cell didselect方法上
可以写一个UItableViewCell 扩展添加如下代码
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
UIView *view = [super hitTest:point withEvent:event];
if ([view isKindOfClass:[UICollectionView class]]) {
return self;
}
return [super hitTest:point withEvent:event];
}
也可以直接在cell中实现该方法
同理如果cell中只相应某个button事件,cell不拦截父类点击事件,也可以使用这种方案
在UICollectionViewCell中实现
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
UIView *view = [super hitTest:point withEvent:event];
if ([view isKindOfClass:[UIButton class]]) {
return self;
}
return [super hitTest:point withEvent:event];
}
这样除了Button点击,其他点击事件会传给父类处理
希望大家bug少一点,工资多一点,写的不好,请大家指正