Понятно! Документация находится здесь в разделе "Создание пользовательских распознавателей жестов" внизу.
По сути, все шесть жестов, предоставляемых Apple, происходят от UIGestureRecognizer, и вы можете создать свой собственный распознаватель жестов таким же образом.
затем, внутри вашего представления, вы подключаете свой распознаватель. и сам факт его подключения автоматически перенаправляет входящие сенсорные события.
На самом деле, поведение по умолчанию состоит в том, чтобы сделать ваш распознаватель наблюдателем этих событий. Это означает, что ваше представление получает их так же, как и раньше, и, кроме того, если ваш распознаватель обнаружит жест, он вызовет ваш метод myCustomEventHandler внутри вашего представления (вы передали его селектор, когда подключили свой распознаватель).
Но иногда вы хотите, чтобы исходные события касания не попадали в представление, и вы можете повозиться со своим распознавателем, чтобы сделать это. так что это немного вводит в заблуждение думать о нем как о «наблюдателе».
Есть еще один сценарий, когда один жест должен съесть другой. Например, вы не можете просто отправить один щелчок, если ваше представление также настроено на получение двойных щелчков. Вы должны дождаться, когда распознаватель двойного щелчка сообщит об ошибке. и если он успешен, вам нужно провалить один щелчок - очевидно, вы не хотите отправлять оба обратно!
person
P i
schedule
28.09.2010