触摸事件没有触及方法?

触摸事件没有触及方法?

问题描述:

我有一个视图控制器和一个UIImageView作为子视图。该UIImageView也有相同类型的子视图。触摸事件没有触及方法?

我:

self.userInteractionEnabled = YES; 

为每套。我的touchesEnded代码正在工作。任何想法会导致这种情况?没有触及甚至触及事件。我不明白?

任何帮助表示赞赏。

感谢// :)

我刚刚从saimhann2002那里得到了一个类似问题的解决方案。

感谢您的回复。我现在已经能够解决这个问题。问题是我将子视图添加到MKMapView而不是ViewController的视图。我不知道为什么这是一个问题。如果你这样做,我会有兴趣听到。将视图作为子视图添加到ViewController的视图中可以修复所有内容,即使其颜色为UIColor clearColor,该视图也可以接受触摸。

工作!

听起来像是你已经走了一路上涨的链条,并检查了self.userInteractionEnabled一路攀升到顶部,对不对?好的,现在检查是否有任何视图的exclusiveTouch设置为YES。另外,如果您在父视图上调用resignFirstResponder而不是UIText字段,则会放弃事件。

最后,beginIgnoringInteractionEvents也会导致这个。

+0

好的,一直在调查。我的层次结构是VC与UIImageView子视图。然后是UISubView的另一个子视图,它也是UIImageView的子类。我在VC的观点中得到了子视图中的事件。但在子视图中,不。如果它是第一个子视图的子视图,也不在子类中。 因此,VC.view和子视图正在获取触摸事件。仍在试图弄清楚什么可能会阻止其他子视图?我甚至做了一个虚拟类,除了图像和触摸处理程序外,基本上什么都没有。没有快乐。 ? – Spanky 2009-09-07 08:19:01

+0

是的,进一步的测试表明,只有父视图可以处理触摸事件。子视图不能够?我确定没有任何设置为exclusiveTouch。我也看过resignFirstResponder,没有使用,也不是beginIgnoringInteractionEvents。并且userInteractionEnabled被设置为YES直到顶部。这几乎就像父视图已成为最前面的视图,并阻止从z顺序接收事件的一切?会不会有一些XCode设置可能导致这种情况? – Spanky 2009-09-07 08:40:43

+0

好的,这会变得更奇怪吗?我刚创建了一个全新的基于视图的项目。在那个项目中,我添加了一个文件,一个UIImageView。在那我能够处理触摸事件。然后我创建了一个新班级。再次是UIImageView的子类,基本上没有其他的实现。我把这个添加为父视图的子视图。现在父母可以处理触摸,但孩子不能。我从父级删除了所有的触摸事件处理程序,但保留它的启用和非独占性。然后我从父级代码中取出代码并将其粘贴到子代中。仍然没有快乐。 – Spanky 2009-09-07 09:17:10