Как вывести список активных распознавателей жестов? - PullRequest
13 голосов
/ 02 марта 2012

Я бы хотел иметь возможность перечислить все активные в настоящее время распознаватели жестов (чтобы я мог временно отключить их). Возможно ли это как-то?

Ответы [ 3 ]

22 голосов
/ 02 марта 2012

Используйте свойство gestureRecognizers UIView:

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

Подробнее: UIView

2 голосов
/ 05 марта 2015

По некоторым причинам это было трудно сделать в Swift, так что вот что получилось.

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

for item in arrayOfGestureRecognizers {
    println("Gesture Recognizer:\(item)")
}
2 голосов
/ 02 марта 2012

Вы можете иметь bool для своего класса и установить его на TRUE , когда распознаватели имеют разрешение на что-либо.Если вы хотите отключить их, вы можете установить bool на FALSE в ваших методах распознавателя.Вы просто должны проверить, является ли bool истинным или ложным, прежде чем делать то, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...