使用hitTest:WithEvent无法选择tableView单元格:

时间:2015-11-25 15:13:13

标签: ios iphone uitableview cocoa-touch uiscrollview

我有一张地图及其上方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; } 中选择一个单元格,它只是不选择它。

有人有想法吗?谢谢!

1 个答案:

答案 0 :(得分:1)

hitTest:withEvent:应该返回与点相交的最深的子视图。由于您只返回self,因此无法触及子视图。

您应该将return self;替换为return [super hitTest:point withEvent:event]