zoukankan      html  css  js  c++  java
  • android 判断左右滑动,上下滑动的GestureDetector简单手势检测

    直接加入监听GestureDetector放在需要判断滑动手势的地方:

     1 import android.app.Activity;  
     2 import android.os.Bundle;  
     3 import android.util.Log;  
     4 import android.view.GestureDetector;  
     5 import android.view.GestureDetector.OnGestureListener;  
     6 import android.view.MotionEvent;  
     7   
     8 public class MainActivity extends Activity {  
     9     protected static final float FLIP_DISTANCE = 50;  
    10     GestureDetector mDetector;  
    11   
    12     @Override  
    13     protected void onCreate(Bundle savedInstanceState) {  
    14         super.onCreate(savedInstanceState);  
    15         setContentView(R.layout.activity_main);  
    16   
    17         mDetector = new GestureDetector(this, new OnGestureListener() {  
    18   
    19             @Override  
    20             public boolean onSingleTapUp(MotionEvent e) {  
    21                 // TODO Auto-generated method stub  
    22                 return false;  
    23             }  
    24   
    25             @Override  
    26             public void onShowPress(MotionEvent e) {  
    27                 // TODO Auto-generated method stub  
    28   
    29             }  
    30   
    31             @Override  
    32             public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {  
    33                 // TODO Auto-generated method stub  
    34                 return false;  
    35             }  
    36   
    37             @Override  
    38             public void onLongPress(MotionEvent e) {  
    39                 // TODO Auto-generated method stub  
    40   
    41             }  
    42   
    43             /** 
    44              *  
    45              * e1 The first down motion event that started the fling. e2 The 
    46              * move motion event that triggered the current onFling. 
    47              */  
    48             @Override  
    49             public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {  
    50                 if (e1.getX() - e2.getX() > FLIP_DISTANCE) {  
    51                     Log.i("TAG", "<--- left, left, go go go");  
    52                     return true;  
    53                 }  
    54                 if (e2.getX() - e1.getX() > FLIP_DISTANCE) {  
    55                     Log.i("TAG", "right, right, go go go --->");  //忽然觉得这个log好智障...
    56                     return true;  
    57                 }  
    58                 if (e1.getY() - e2.getY() > FLIP_DISTANCE) {  
    59                     Log.i("TAG", "向上滑...");  
    60                     return true;  
    61                 }  
    62                 if (e2.getY() - e1.getY() > FLIP_DISTANCE) {  
    63                     Log.i("TAG", "向下滑...");  
    64                     return true;  
    65                 }  
    66   
    67                 Log.d("TAG", e2.getX() + " " + e2.getY());  
    68   
    69                 return false;  
    70             }  
    71   
    72             @Override  
    73             public boolean onDown(MotionEvent e) {  
    74                 // TODO Auto-generated method stub  
    75                 return false;  
    76             }  
    77         });  
    78     }  
    79   
    80     @Override  
    81     public boolean onTouchEvent(MotionEvent event) {  
    82         return mDetector.onTouchEvent(event);  
    83     }  
    84 }  
  • 相关阅读:
    Python中所有的关键字
    关于selenium的8种元素定位
    对提示框的操作
    selenium+webservice进行百度登录
    MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled...报错解决
    Vue中使用echarts
    npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142解决方法
    插入排序
    冒泡排序优化
    roject 'org.springframework.boot:spring-boot-starter-parent:XXX' not found 解决
  • 原文地址:https://www.cnblogs.com/Sharley/p/7807999.html
Copyright © 2011-2022 走看看