2012-06-12 36 views
0

我有一个视图,其中包含各种类型的子视图。在一个点上,我想禁用与视图和子视图的所有互动,并注册一个手势识别我放在整个视图,而不是龙头:UITextField停止工作UIGestureRecognizer

tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:revealController action:@selectorrdoSomething:)]; 
tapGestureRecognizer.cancelsTouchesInView = YES; 

虽然有点作品,下面还是交互的视图到所有的接触。然后我尝试添加:

tapGestureRecognizer.delaysTouchesBegan = YES; 
tapGestureRecognizer.delaysTouchesEnded = YES; 

现在它EXCEPT - 当我点击过的UITextField,这个接收触摸,而不是手势识别的。为什么是这样,我怎么能阻止它?任何帮助非常感谢:)

+0

不知道为什么这是downvoted ...如果你能解释你为什么投票,这将不胜感激。这不是一个愚蠢的问题,尽管迄今为止唯一的答案是接近的,但它也会在注释中声明该视图上的手势识别器。也不知道为什么这个答案是正确的,当它不能正确解决问题(但是,谢谢,这是一个好主意)。 –

回答

2

听起来像你想要做的是设置视图,你不想收到触摸.userInteractionEnabled财产FALSE。或者我误解了一些东西。

yourView.userInteractionEnabled = FALSE; 
+0

如果我这样做,手势识别器将无法工作。谢谢虽然,但我已经试过:) –