如何列出当前活动的手势识别器?

问题描述 投票:14回答:3

我希望能够列出所有当前活动的手势识别器(因此我可以暂时禁用它们)。有可能吗?

ios uigesturerecognizer
3个回答
23
投票

使用UIView的gestureRecognizers属性:

for (UIGestureRecognizer *recognizer in self.gestureRecognizers)
{
    //Do something with recognizer
}

更多阅读:UIView


2
投票

您可以为您的班级设一个布尔型,并将其设置为TRUE,当识别器有权执行操作时。如果要禁用它们,可以在识别器方法中将布尔值设置为FALSE。您只需要在执行所需的操作之前测试布尔值是对还是错。


2
投票

由于某些原因,这对我来说在Swift中很难做到,所以这就是最终的结果。

var arrayOfGestureRecognizers: [UIGestureRecognizer] = self.topViewController.view.gestureRecognizers! as NSArray as [UIGestureRecognizer]

for item in arrayOfGestureRecognizers {
    println("Gesture Recognizer:\(item)")
}
© www.soinside.com 2019 - 2024. All rights reserved.