我在另一个使用UITouchGesture的视图之上有一个UIView。问题是触摸事件在大多数前向UIView以及后台的UIView中被识别。我希望触摸事件仅适用于最后面的视图。
希望这是有道理的。
感谢您的帮助
答案 0 :(得分:4)
view.userInteractionEnabled = NO;
视图是最前沿的UIview。
祝你好运!答案 1 :(得分:3)
我可以看到你这样做的最好方法是在你的视图中声明UITouchGesture,当你需要在视图中禁用触摸时你可以禁用:
点按的示例:
在您的.h文件中声明:
UITapGestureRecognizer* tap;
在你的.m文件中
tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)];
[yourView addGestureRecognizer:tap];
当你需要禁用水龙头时,你可以很简单:
[tap setEnable:NO];
或删除它:
[yourView removeGestureRecognizer:tap];
当您需要启用/禁用时,您将更容易管理您的触摸。
答案 2 :(得分:1)
检查[gesture view]
是否等于[[self.view subviews] objectAtIndex:0]
并执行任何操作。