Поддержание состояния между касаниями в пользовательском UIGestureRecognizer - PullRequest
0 голосов
/ 25 апреля 2018

Я реализую пользовательский UIGestureRecognizer, который делает несколько вещей, включая распознавание двойного касания.Я пытаюсь отследить, является ли это двойным касанием, отслеживая количество нажатий в качестве локальной переменной класса настраиваемых жестов.

Естественно, когда пользователь инициирует двойное нажатие, ему приходитсяподнимите палец между кранами, чтобы вызвать touchesEnded.Однако, это всегда, кажется, также вызывает reset() для вызова, который я реализовал для сброса всего моего локального состояния (как я должен, так что состояние очищается, когда распознаватель действительно правильно завершился).Из-за этого я не могу отслеживать, был ли предыдущий сигнал каждый раз, когда вызывается touchesBegan.

Есть ли правильный способ реализовать это?Мне кажется, мне просто любопытно, как UITapGestureRecognizer реализует несколько нажатий в одном сеансе распознавания.

1 Ответ

0 голосов
/ 26 апреля 2018

FWIW, я закончил тем, что использовал reset(), чтобы нормально очистить состояния, но все еще отслеживал последний затронутый сеанс (сеанс, который начинался с touchesBegan и заканчивался touchesEnded), чтобы определить, был ли предыдущийнажмите в начале каждого сеанса.

Не уверен, что именно так реализовано двойное касание с UITapGestureRecognizer, но был бы рад услышать другие решения, если кто-нибудь знает о них.

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