app上有时候会使用到简单手势,GestureDetector的简单示例:
1.首先新建一个GestureDetector对象:
mGestureDetector = new GestureDetector(this,
new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2,
float velocityX, float velocityY) {
if (Math.abs(velocityY) < 100) {
// System.out.println("手指移动的太慢了");
return true;
}
// 手势向下 down
if ((e2.getRawY() - e1.getRawY()) > 200) {
finish();// 在此处控制关闭
return true;
}
// 手势向上 up
if ((e1.getRawY() - e2.getRawY()) > 200) {
return true;
}
return super.onFling(e1, e2, velocityX, velocityY);
}
});
2.在OnTouchEvent中注册 :
@Override
public boolean onTouchEvent(MotionEvent event) {
mGestureDetector.onTouchEvent(event);
return super.onTouchEvent(event);
}