屏幕滑动监测以及触发事件
屏幕滑动监测以及触发事件
如果需要进行屏幕检测,那么得需要使用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谢谢。