首先得Activity必须实现OnGestureListener接口,该接口提供了关于手势操作的一些方法,
onDown方法:onDown是,一旦触摸屏按下,就马上产生onDown事件
public boolean onDown(MotionEvent e) {
return false;
}
onFling方法:当手在屏幕上滑动但手未离开屏幕时触发
MotionEvent e1 手开始触碰屏幕的位置的MotionEvent对象
MotionEvent e2 手结束触碰屏幕的位置的MotionEvent对象
float velocityX 表示手在水平方向的移动速度
float velocityX 表示手在垂直方向的移动速度
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
onLongPress方法:长按屏幕时触发
public void onLongPress(MotionEvent e)
onScroll方法:当手在屏幕上滑动离开屏幕时触发,参数跟onFling一样(注意两者的区别)
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY)
onShowPress方法:点击了触摸屏,但是没有移动和弹起的动作onShowPress和onDown的区别在于 onDown是,一旦触摸屏按下,就马上产生onDown事件,但是onShowPress是onDown事件产生后, 一段时间内,如果没有移动鼠标和弹起事件,就认为是onShowPress事件。
public void onShowPress(MotionEvent e)
onSingleTapUp方法:轻击触摸屏后,弹起。如果这个过程中产onLongPress、onScroll和onFling事件,就不会 产生onSingleTapUp事件。
public boolean onSingleTapUp(MotionEvent e)
onDown方法:onDown是,一旦触摸屏按下,就马上产生onDown事件
public boolean onDown(MotionEvent e) {
return false;
}
onFling方法:当手在屏幕上滑动但手未离开屏幕时触发
MotionEvent e1 手开始触碰屏幕的位置的MotionEvent对象
MotionEvent e2 手结束触碰屏幕的位置的MotionEvent对象
float velocityX 表示手在水平方向的移动速度
float velocityX 表示手在垂直方向的移动速度
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
onLongPress方法:长按屏幕时触发
public void onLongPress(MotionEvent e)
onScroll方法:当手在屏幕上滑动离开屏幕时触发,参数跟onFling一样(注意两者的区别)
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY)
onShowPress方法:点击了触摸屏,但是没有移动和弹起的动作onShowPress和onDown的区别在于 onDown是,一旦触摸屏按下,就马上产生onDown事件,但是onShowPress是onDown事件产生后, 一段时间内,如果没有移动鼠标和弹起事件,就认为是onShowPress事件。
public void onShowPress(MotionEvent e)
onSingleTapUp方法:轻击触摸屏后,弹起。如果这个过程中产onLongPress、onScroll和onFling事件,就不会 产生onSingleTapUp事件。
public boolean onSingleTapUp(MotionEvent e)
作者:u010180155 发表于2013-7-21 1:57:45 原文链接
阅读:91 评论:0 查看评论