zoukankan      html  css  js  c++  java
  • 屏幕滑动监测以及触发事件

    屏幕滑动监测以及触发事件

    如果需要进行屏幕检测,那么得需要使用GestureDetector,首先声明空间,然后创建空间,那么就可以进行重写方法

            private final double FLIP_DISTANCE=50;
            detector=new GestureDetector(this, new GestureDetector.OnGestureListener() {
                @Override
                //用户按下屏幕就会触发
                public boolean onDown(MotionEvent e) {
                    return false;
                }
    
                @Override
                //如果是按下的时间超过瞬间,而且在按下的时候没有松开或者是拖动的,那么onShowPress就会执行
                public void onShowPress(MotionEvent e) {
    
                }
    
                @Override
                //轻击一下屏幕,立刻抬起来,才会有这个触发
                public boolean onSingleTapUp(MotionEvent e) {
                    return false;
                }
    
                @Override
                public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
                    return false;
                }
    
                @Override
                //长按触摸屏,超过一定时长,就会触发这个事件
                public void onLongPress(MotionEvent e) {
    
                }
    
                @Override
                //滑屏,用户按下触摸屏、快速移动后松开
                public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
                 if (e1.getX() - e2.getX() > FLIP_DISTANCE) {
                        Log.i(TAG, "向左滑...");
                       
                        return true;
                    }
                    if (e2.getX() - e1.getX() > FLIP_DISTANCE) {
                        Log.i(TAG, "向右滑...");
                    
                        return true;
                    }
                    if (e1.getY() - e2.getY() > FLIP_DISTANCE) {
                        Log.i(TAG, "向上滑...");
                        return true;
                    }
                    if (e2.getY() - e1.getY() > FLIP_DISTANCE) {
                        Log.i(TAG, "向下滑...");
                        return true;
                    }
     
                    Log.d("TAG", e2.getX() + " " + e2.getY());
                    return false;
                }
            });
    
    
    这是小睿的博客,如果需要转载,请标注出处啦~ヾ(≧▽≦*)o谢谢。
  • 相关阅读:
    静态绑定与动态绑定
    Java之浅拷贝与深拷贝
    python类对象及类实例的创建过程
    以订单和商品为例进行详细的组内数据获取的分析
    根据给定时间及偏移的年份求偏移后时间的前一天(支持偏移量为正和负)
    mysql取到组内的前几条数据
    python进程通信的几种实现方式
    python-redis之数据类型二
    python-redis之数据类型
    python-redis
  • 原文地址:https://www.cnblogs.com/Yunrui-blogs/p/12500375.html
Copyright © 2011-2022 走看看