Android--手势识别器

 手势识别器
    1,定义出来
    2,实例化-把想要的方法给重写
    3,在onTouchEvent()把事件传递给手势识别器
	private GestureDetector detector;

将detector实例化:里面的方法可以ctrl+o,看里面有什么方法

    private void initView(final Context context) {
        detector=new GestureDetector(context, new GestureDetector.SimpleOnGestureListener(){
            @Override
            public void onLongPress(MotionEvent e) {
                Toast.makeText(context, "长按", Toast.LENGTH_SHORT).show();
                super.onLongPress(e);
            }

            /**
             *
             * @param e1 点下去那个点
             * @param e2 离开的那个点
             * @param distanceX x的滑动距离
             * @param distanceY y的滑动距离
             * @return
             */
            @Override
            public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
                Toast.makeText(context, "滑动", Toast.LENGTH_SHORT).show();
                return super.onScroll(e1, e2, distanceX, distanceY);
            }

            @Override
            public boolean onDoubleTap(MotionEvent e) {
                Toast.makeText(context, "双击", Toast.LENGTH_SHORT).show();
                return super.onDoubleTap(e);
            }
        });
    }

之后第三步是将手势识别器添加进触摸方法里面:

@Override
    public boolean onTouchEvent(MotionEvent event) {
        super.onTouchEvent(event);
        detector.onTouchEvent(event);
        return true;
    }
原创文章 158 获赞 2 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43616001/article/details/104831740