How to catch double tap events in Android using OnTouchListener

后端 未结 6 1740
孤独总比滥情好
孤独总比滥情好 2020-12-31 08:45

I am trying to catch double-tap events using OnTouchListener. I figure I would set a long for motionEvent.ACTION_DOWN, and a different long for a second motionEvent.ACTION_D

6条回答
  •  执笔经年
    2020-12-31 09:09

    With the helper class SimpleGestureListener that implements the GestureListener and OnDoubleTapListener you dont need much to do.

    yourView.setOnTouchListener(new OnTouchListener() {
    private GestureDetector gestureDetector = new GestureDetector(Test.this, new GestureDetector.SimpleOnGestureListener() {
        @Override
        public boolean onDoubleTap(MotionEvent e) {
            Log.d("TEST", "onDoubleTap");
            return super.onDoubleTap(e);
        }
        ... // implement here other callback methods like onFling, onScroll as necessary
    });
    
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        Log.d("TEST", "Raw event: " + event.getAction() + ", (" + event.getRawX() + ", " + event.getRawY() + ")");
        gestureDetector.onTouchEvent(event);
        return true;
    }});
    

提交回复
热议问题