• 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 }  
  • 相关阅读:
    移动端开发touchstart,touchmove,touchend事件详解和项目
    我对JVM的理解
    快速排序
    归并排序(Merge sort)
    希尔排序
    插入排序
    选择排序
    冒泡排序(Bubble Sort)
    java设计模式之单例模式
    Java中反射机制的理解
  • 原文地址:https://www.cnblogs.com/Sharley/p/7807999.html
Copyright © 2020-2023  润新知