0

我在我的类中的UITableView带有自定义UITableViewCellUIImageView内。UIGestureRecognizer手柄触摸在UITableView的

我需要检测在该UIImageView触摸来处理自定义方法(handleSingleTouch:) ,我需要选择小区时要调用的-didSelectRowAtIndexPath

所以我以这种方式添加一个UIGestureRecognizerTableView

UIGestureRecognizer *GEST=[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTouch:)]; 

[self.myTable addGestureRecognizer:GEST]; 
GEST.delegate=self; 
[GEST release]; 

[GEST setCancelsTouchesInView:NO]; 
[GEST setDelaysTouchesEnded:NO]; 

有冲突: 每次UIImageView被触摸时tableviewGestureRecognizer启动方法也是didSelectRowAtIndexPath被调用。

有人知道调用gestureRecognizerMethod没有调用didSelectRowAtIndexPath的方式吗?

回答

0

尝试添加手势识别到图像而不是表。看到这个答案https://stackoverflow.com/a/7760402

+0

这可能是一个不错的解决方案..但是如果你有N件物品加载,性能和节省内存呢? – 2012-05-18 08:31:58

+0

@Denis - 对不起,*非常*晚回复。性能和内存不应该是一个问题,因为视图被回收,因此这种设置只发生在第一次(如果我没有弄错)。 – 2013-08-06 03:05:27

0

我不能想办法做到这一点,因为你需要接触响应在整个小区。但是你可以做的是tagUIImageView然后检查之初 - didSelectRowAtIndexPath,为UIImageViewreturn

+0

TNX乌拉圭回合快answare!对你来说,我发现了一个grose解决方案,但它的工作原理!每次我检测到UIImageView与特定标签的触摸我设置一个BOOL isImagePressed为YES,我把条件如果(!isImagePressed)在didSelectRowAtIndexPath为了控制特定的方法。 – 2012-04-02 12:42:54

+0

someOne有一个更清洁的解决方案? – 2012-04-02 14:13:00