Как работает UIGestureRecognizer? - PullRequest
0 голосов
/ 07 июня 2011

Как UIGestureRecognizer работает внутри? Можно ли эмулировать его в iOS <3.2? </p>

Ответы [ 2 ]

1 голос
/ 07 июня 2011

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

Обязательно сначала задайте себе пару вопросов: хотите ли вы воссоздать всю «структуру» распознавателя, или просто сможете распознать, скажем, пролистывание? Если последнее, то в сети должно быть множество примеров от предварительных 3.2 дней обнаружения свипов с использованием обычных сенсорных обработчиков событий.

Если вы действительно хотите воссоздать фреймворк, вы можете, и это на самом деле довольно интересное упражнение. У объекта UIKit есть некоторые крючки в конвейере событий на более ранних стадиях, но вы можете получить аналогичный результат, отслеживая касания и создавая конвейер объектов распознавателя. Если вы прочитаете документы на UIGestureRecognizer, вы увидите, что управление состояниями, которое они используют, довольно четко изложено. Вы можете скопировать это, а затем просто создать свой собственный MyPanGestureRecognizer, MySwipeGestureRecognizer и т. Д., Которые являются производными от базы MyGestureRecognizer. У вас должен быть некоторый подкласс UIView (MyGestureView), который обрабатывает все касания и проходит через список MyGestureRecognizer, используя конечный автомат, который подразумевается в документах.

1 голос
/ 07 июня 2011

Если вам нужно подробное объяснение того, как они работают, стоит посмотреть this video с прошлогодней WWDC.

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