我有一张地图及其上方UIScrollView
,其子视图为UITableView
(有一张地图,您可以使用{{在屏幕上向上和向下滚动tableView
1}})。
我正在使用scrollView
来检测用户触摸-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
或背景中的地图(如果他滚动tableView
它会上下移动,如果他正在滚动地图将改变位置(就像任何常规地图一样))。
代码:
tableView
一切正常,但问题是由于某种原因你不能在-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
CGPoint comparePoint=CGPointMake(point.x, point.y-[[UIScreen mainScreen] bounds].size.height+self.allCellsHeightDividedBy2);
if (comparePoint.y<self.contentOffsetRecivied.y) {
return nil;
}
return self;
}
中选择一个单元格,它只是不选择它。
有人有想法吗?谢谢!
答案 0 :(得分:1)
hitTest:withEvent:
应该返回与点相交的最深的子视图。由于您只返回self
,因此无法触及子视图。
您应该将return self;
替换为return [super hitTest:point withEvent:event]
。