Как реализовать мультитач на iOS - PullRequest
0 голосов
/ 25 октября 2010

Я хотел бы внедрить мультитач, и я надеялся получить некоторые проверки здравомыслия от блестящих людей здесь. :)

Исходя из того, что я могу сказать, моя стратегия обнаружения и отслеживания мультитач будет состоять в том, чтобы использовать методы _Moved и _Ended touchesBegan и метод allTouches параметра события, чтобы получать видимость всех соответствующих касаний в любое конкретное время.

Я думал, что по сути буду использовать previousLocationInView как способ связать касания, которые приходят с моими новыми событиями, с текущими активными касаниями, т. Е. Если есть touchBegan для того, который находится в точке x, y = 10,14 затем я могу использовать предыдущее местоположение касания в следующем сообщении, чтобы узнать, к какому из них привязано это новое касание, чтобы отслеживать непрерывное движение одного пальца и т. д. Имеет ли это смысл? Если это имеет смысл, есть ли лучший способ сделать это? Я не могу удерживать указатели UITouch или UIEvent как способ идентификации касаний с предыдущими касаниями, поэтому я не могу пойти по этому пути. Все, что я могу сделать, это связать их друг с другом через их значение предыдущего locationInView (и узнать, какие «новые» касания).

1 Ответ

0 голосов
/ 25 октября 2010

Возможно, вы захотите взглянуть на распознаватели жестов.Из документов Apple,

Вы можете реализовать код обработки сенсорных событий для распознавания и обработки этих жестов, но этот код будет сложным, возможно, с ошибками и займет некоторое время для написания.Кроме того, вы можете упростить интерпретацию и обработку общих жестов, используя один из классов распознавателя жестов, представленных в iOS 3.2.Чтобы использовать распознаватель жестов, вы создаете его экземпляр, присоединяете его к получению касаний вида, настраиваете его и назначаете ему селектор действий и целевой объект.Когда распознаватель жестов распознает его жест, он отправляет целевому сообщению действие, позволяющее цели ответить на жест.

См. Статью о средствах распознавания жестов и, в частности,раздел под названием «Создание пользовательских распознавателей жестов».Вам понадобится учетная запись Apple Developer Center для доступа к этому.

...