@Override public boolean onFling( final MotionEvent e1, final MotionEvent e2, float velocityX, float velocityY) { final float xDistance = Math.abs(e1.getX() - e2.getX()); final float yDistance = Math.abs(e1.getY() - e2.getY()); if (xDistance > _swipe_Max_Distance || yDistance > _swipe_Max_Distance) return false; velocityX = Math.abs(velocityX); velocityY = Math.abs(velocityY); boolean result = false; if (velocityX > _swipe_Min_Velocity && xDistance > _swipe_Min_Distance) { if (e1.getX() > e2.getX()) // right to left _listener.onSwipe(SWIPE_LEFT); else _listener.onSwipe(SWIPE_RIGHT); result = true; } else if (velocityY > _swipe_Min_Velocity && yDistance > _swipe_Min_Distance) { if (e1.getY() > e2.getY()) // bottom to up _listener.onSwipe(SWIPE_UP); else _listener.onSwipe(SWIPE_DOWN); result = true; } return result; }
public boolean onTouch(final View view, final MotionEvent motionEvent) { touch(motionEvent); checkPinch(view, motionEvent); checkTouchMove(view, motionEvent); if (mode == ZOOM) return true; switch (motionEvent.getAction() & MotionEvent.ACTION_MASK) { case MotionEvent.ACTION_UP: { listener.lastScrollX = 0.0f; listener.lastScrollY = 0.0f; listener.firstY = true; } } if (own_procces) return gestureDetector.onTouchEvent(motionEvent); gestureDetector.onTouchEvent(motionEvent); return false; }
@Override public boolean onDoubleTap(final MotionEvent arg0) { _listener.onDoubleTap(); ; return true; }