如何在android中实现表面视图的双击

moh*_*han 8 android gesture surfaceview

请告诉我如何SurfaceView使用手势检测器在Android中实现双击.任何人都可以提供代码示例吗?

luk*_*uku 16

您可以尝试以下..实际上我测试了这个并且它工作得很好:

1)扩展GestureDetector.SimpleOnGestureListener并覆盖它的onDoubleTap()方法:

    class DoubleTapGestureDetector extends GestureDetector.SimpleOnGestureListener {

        @Override
        public boolean onDoubleTap(MotionEvent e) {
            Log.d("TAG", "Double Tap Detected ...");
            return true;
        }

    }
Run Code Online (Sandbox Code Playgroud)

2)实例化GestureDetector:

final GestureDetector mGesDetect = new GestureDetector(this, new DoubleTapGestureDetector());
Run Code Online (Sandbox Code Playgroud)

3)设置一个OnTouchListeneron SurfaceView,覆盖它的onTouch()方法并调用onTouchEvent()你的GestureDetector对象:

    surfview.setOnTouchListener(new OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            mGesDetect.onTouchEvent(event);
            return true;
        }
    });
Run Code Online (Sandbox Code Playgroud)