我希望能够列出所有当前活动的手势识别器(所以我可以暂时禁用它们)。这有可能吗?
答案 0 :(得分:22)
使用UIView的gestureRecognizers
属性:
for (UIGestureRecognizer *recognizer in self.gestureRecognizers)
{
//Do something with recognizer
}
更多阅读:UIView
答案 1 :(得分:2)
当识别器有权执行操作时,您可以为您的班级设置一个bool并将其设置为 TRUE 。如果要禁用它们,可以在识别器方法中将bool设置为 FALSE 。你只需要在做你需要的东西之前测试bool是真还是假。
答案 2 :(得分:2)
由于某些原因,我在Swift中很难做到这一点,所以这里最终会起作用。
var arrayOfGestureRecognizers: [UIGestureRecognizer] = self.topViewController.view.gestureRecognizers! as NSArray as [UIGestureRecognizer]
for item in arrayOfGestureRecognizers {
println("Gesture Recognizer:\(item)")
}