GestureDetector方法中的几个参数

来源:互联网 发布:狼人杀抿身份数据 编辑:程序博客网 时间:2024/06/05 00:14
import android.view.GestureDetector.OnGestureListener;


private GestureDetector gestureDetector = new GestureDetector(new OnGestureListener()
 {
  // 鼠标按下的时候,会产生onDown。由一个ACTION_DOWN产生。
  public boolean onDown(MotionEvent event)
  {
   System.out.println("mouse down" + " " + event.getX() + "," + event.getY());
   return false;
  }


  // 用户按下触摸屏、快速移动后松开,这个时候,你的手指运动是有加速度的。
  // 由1个MotionEvent ACTION_DOWN,
  // 多个ACTION_MOVE, 1个ACTION_UP触发
  // e1:第1个ACTION_DOWN MotionEvent
  // e2:最后一个ACTION_MOVE MotionEvent
  // velocityX:X轴上的移动速度,像素/秒
  // velocityY:Y轴上的移动速度,像素/秒
  public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
  {
   System.out.println("onFling " + "X轴速度:" + velocityX + "Y轴速度:" + velocityY);
   return false;
  }


  // 用户长按触摸屏,由多个MotionEvent ACTION_DOWN触发
  public void onLongPress(MotionEvent event)
  {
   System.out.println("on long pressed");
  }


  // 滚动事件,当在触摸屏上迅速的移动,会产生onScroll。由ACTION_MOVE产生
  // e1:第1个ACTION_DOWN MotionEvent
  // e2:最后一个ACTION_MOVE MotionEvent
  // distanceX:距离上次产生onScroll事件后,X抽移动的距离
  // distanceY:距离上次产生onScroll事件后,Y抽移动的距离
  public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY)
  {
   System.out.println("onScroll" + " " + distanceX + "," + distanceY);
   return false;
  }


  // 点击了触摸屏,但是没有移动和弹起的动作。onShowPress和onDown的区别在于
  // onDown是,一旦触摸屏按下,就马上产生onDown事件,但是onShowPress是onDown事件产生后,
  // 一段时间内,如果没有移动鼠标和弹起事件,就认为是onShowPress事件。
  public void onShowPress(MotionEvent event)
  {
   System.out.println("pressed");


  }


  // 轻击触摸屏后,弹起。如果这个过程中产生了onLongPress、onScroll和onFling事件,就不会
  // 产生onSingleTapUp事件。
  public boolean onSingleTapUp(MotionEvent event)
  {
   System.out.println("Tap up");
   return false;
  }


 });
 
 @Override 
 public boolean onTouchEvent(MotionEvent event)
 {
  if (gestureDetector.onTouchEvent(event))
   return true;
  else
   return false;
 }
0 0