74
Разведение пальцев (pinch open).
Использование: увеличение
содержимого,
разворачивание.
Выполнение: касание экрана двумя пальцами,
развести, отпустить.
О возможности управлять приложением с помощью сенсорных жестов
можно говорить в том случае, когда
приложение способно распознать, что под
набором касаний экрана скрывается некоторый жест и выполнить
соответствующее действие. Процесс распознавания жеста обычно состоит из
двух этапов: сбор данных и распознавание жеста. Рассмотрим эти этапы
подробнее.
9.3.1 Сбор данных о сенсорных событиях
Основные действия, которые может произвести пользователь при
взаимодействии с сенсорным экраном: коснуться
экрана пальцем, переместить
палец по экрану и отпустить. Эти действия распознаются системой Android,
как сенсорные события (touch-события).
Каждый раз при появлении сенсорного события инициируется вызов
метода onTouchEvent(). Обработка
события станет возможной, если этот
метод реализован в классе активности или некоторого компонента,
иначе
событие просто игнорируется.
Жест начинается, при первом касании экрана, продолжается пока система
отслеживает положение пальцев пользователя и заканчивается получением
финального события, состоящего в том, что ни один палец не касается экрана.
Объект MotionEvent, передаваемый в метод onTouchEvent(),
предоставляет
детали каждого взаимодействия. Рассмотрим основные константы
класса MotionEvent, определяющие сенсорные события:
MotionEvent.ACTION_DOWN - касание экрана пальцем,
является
начальной точкой для любого сенсорного события или жеста;
MotionEvent.ACTION_MOVE - перемещение пальца по экрану;
MotionEvent.ACTION_UP - поднятие пальца от экрана.
75
Приложение может использовать
предоставленные данные для
распознавания жеста.
Можно реализовать свою собственную обработку событий для
распознавания жеста, таким образом можно работать с произвольными
жестами в приложении. Если же в приложении
необходимо использовать
стандартные жесты, описанные в таблице 9.1, можно воспользоваться
классом GestureDetector. Этот класс позволяет распознать стандартные жесты
без обработки отдельных сенсорных событий.
Достарыңызбен бөлісу: