2015-01-23 4 views
1

Я использовал следующий двойной код водопроводнуюAndroid Double Tap Пожары Дважды

setOnTouchListener(this); 
detector = new GestureDetector(context, new GestureDetector.SimpleOnGestureListener() { 
    @Override 
    public boolean onDoubleTapEvent(MotionEvent ev) { 
     int x = (int)ev.getX(); 
     int y = (int)ev.getY(); 
     Toast.makeText(getContext(), "Double tapped", Toast.LENGTH_LONG).show(); 
    } 
}); 

Когда я бегу он работает тост дважды

Есть идеи?

Бег на KitKat 4.4

Любая помощь оценили

Марк

+0

Вы можете показать свою реализацию OnTouchListener? –

+0

Это не позволит мне добавить слишком долго, пожалуйста, см. Ссылку ниже, действительно оцените любую помощь. – user3422687

ответ

9

Это, вероятно, происходит потому, что onDoubleTapEvent уведомляет о пуха, двигаться и вверх события. В вашем случае у вас есть события вверх и вниз, которые заставляют тост отображать дважды. Если вы просто хотите проверить, что двойной щелчок был обнаружен успешно, вы можете использовать onDoubleTap (MotionEvent e) вместо onDoubleTapEvent (MotionEvent ev).

+0

Thaks для этого я просмотрел код и уверен, что вы правы, но понятия не имеете, как это исправить. Мой полный код слишком длинный, чтобы опубликовать его здесь, поэтому его можно просмотреть здесь https://www.dropbox.com/s/tsahec4yy9rxw75/SubsamplingScaleImageView.java?dl=0 или это способ обнаружения, если есть два экземпляра активности и закройте его, как если бы я дважды нажимал, это запускает другое действие, но делает это дважды – user3422687

Смежные вопросы