Вопрос

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

Это было полезно?

Решение

Не написав за вас код, вот что вам нужно сделать, чтобы отслеживать пролистывание несколькими пальцами:

  1. Сначала настройте свое представление multipleTouchEnabled установите для свойства YES, чтобы вы могли отслеживать несколько касаний.
  2. В touchesBegan, сохраняйте каждое касание' locationInView имущество (это CGPoint).
  3. Определите «окно смахивания», которое ограничивает допустимое количество внеосевых движений, но при этом будет считать этот жест смахиванием.Если, например, вы хотите отслеживать горизонтальные полосы, возможно, вам понадобится «окно прокрутки» размером 12x6 — то есть, если ваши касания перемещаются как минимум на 12 пикселей по горизонтали, перемещаясь менее чем на 6 пикселей по вертикали, вы буду считать это ударом.
  4. В touchesMoved, сравните текущее местоположение касаний с сохраненными начальными местоположениями из шага 2.Если они все еще находятся в «окне прокрутки», ничего не делайте.Если один или оба пальца вышли за пределы «окна смахивания», отмените проверку смахивания.Если они оба соответствуют требованиям для пролистывания, запустите любой метод, который вы хотите вызвать, когда вы обнаружите пролистывание несколькими пальцами.
  5. В «touchesEnded» прекратите отслеживание смахивания, поскольку, если касания закончились, но вы все еще не запустили метод смахивания из № 4, то они, должно быть, не представляли собой смахивание.

Надеюсь это поможет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top