很奇怪。我已经实现了许多滑动手势识别器,一切正常。我刚刚添加了一个轻敲手势识别器,当我运行模拟器并单击时,我没有任何效果。在下面的代码中,[self doMethod]永远不会触发。我在viewDidLoad中为我的控制器设置了所有手势识别器。我正在使用UIWebView,因此可能会有一些funkiness。任何想法?
我通常设置了recongnizer:
UITapGestureRecognizer *tapper = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(handleTap:)];
[self.view addGestureRecognizer:tapper];
handleTap方法。
-(IBAction)handleTap:(UITapGestureRecognizer*)sender{
[self doMethod];
}
答案 0 :(得分:2)
这应该有效
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
return YES;
}
UIWebView有自己的gestureRecognizers
这告诉UIWebView我们将使用aditional gestureRecognizers
答案 1 :(得分:1)
我不是100%确定UITapGestureRecognizer的“numberOfTapsRequired”和“numberOfTouchesRequired”属性的默认值,但是你可能想要尝试初始化它们,看看是否会将其踢成齿轮。此外,如果您的UIWebView覆盖整个视图,底部视图可能无法接收到触摸(同样,不是100%肯定)。您可以尝试将识别器添加到webview中。