Android手勢監聽 OnGestureListener (短按,長按,慢滑動,快滑動)
/**
- @以下方法中的參數解釋:
- @e1:第1個是 ACTION_DOWN MotionEvent 按下的動作
- @e2:后一個是ACTION_UP MotionEvent 抬起的動作(這里要看下備注5的解釋)
- @velocityX:X軸上的移動速度,像素/秒
- @velocityY:Y軸上的移動速度,像素/秒 */ @Override public boolean onDown(MotionEvent e) { // ACTION_DOWN v_str.add("onDown"); return false; }
@Override // ACTION_DOWN 、短按不移動 public void onShowPress(MotionEvent e) { v_str.add("onShowPress");
}
@Override // ACTION_DOWN 、長按不滑動 public void onLongPress(MotionEvent e) { v_str.add("onLongPress"); }
@Override // ACTION_DOWN 、慢滑動 public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { v_str.add("onScroll"); return false; }
@Override // ACTION_DOWN 、快滑動、 ACTION_UP public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { v_str.add("onFling"); // -------備注5---------- // if(e1.getAction()==MotionEvent.ACTION_MOVE){ // v_str.add("onFling"); // }else if(e1.getAction()==MotionEvent.ACTION_DOWN){ // v_str.add("onFling"); // }else if(e1.getAction()==MotionEvent.ACTION_UP){ // v_str.add("onFling"); // } // if(e2.getAction()==MotionEvent.ACTION_MOVE){ // v_str.add("onFling"); // }else if(e2.getAction()==MotionEvent.ACTION_DOWN){ // v_str.add("onFling"); // }else if(e2.getAction()==MotionEvent.ACTION_UP){ // v_str.add("onFling"); // } if (isChagePage) bmp = BitmapFactory.decodeResource(getResources(), R.drawable.himi_dream); else bmp = BitmapFactory.decodeResource(getResources(), R.drawable.himi_warm); isChagePage = !isChagePage; return false; }
@Override
// 短按ACTION_DOWN、ACTION_UP
public boolean onSingleTapUp(MotionEvent e) {
v_str.add("onSingleTapUp");
return false;
}</pre>