#android #touch #touchscreen
#Android #сенсорный #сенсорный экран
Вопрос:
Я столкнулся с действительно странным сценарием во время моих тестов, и, возможно, вы сможете просветить меня.
Сценарий: Приложение состоит из Surfaceview, в котором я обрабатываю событие касания. У меня есть изображение на экране, и пользователь нажимает на него пальцем, а затем возвращает его обратно. Это похоже на короткое нажатие кнопки.
Что пошло не так:
Samsung Galaxy S с экраном SuperAMOLED — запускаются события касания: вниз, а затем вверх. как обычно
Nexus One, Desire — запускаются следующие события касания: Вниз, Переместить, переместить, вверх Жест перемещения небольшой, всего — 1 пиксель, но он есть. Теперь представьте тот факт, что у меня есть код, который запускается при событии перемещения.
Итак, при тестировании на моем Galaxy S все работает замечательно, при тестировании на Nexus это не удается, поскольку он реагирует не так, как предполагалось.
Мои вопросы:
- есть ли какой-либо способ предотвратить это?
- это из-за типа экрана и чувствительности?
Ответ №1:
Используйте логический флаг, чтобы предотвратить запуск кода в событии перемещения, установив флаг в значение true в событии down, а затем вызовите методы.