关于OnTouchListener中的onTouch()触发的不同事件说明

来源:互联网 发布:软件租用合同 编辑:程序博客网 时间:2024/09/21 06:34

public boolean onTouch(View v, MotionEvent event);  

View v是触发事件的源,MotionEvent event即一个触摸事件。不同的事件在MotionEvent中有不同的id,我们可以根据event.getAction() & MotionEvent.ACTION_MASK的结果来判断是何种事件。

  • MotionEvent.ACTION_DOWN:在第一个点被按下时触发
  • MotionEvent.ACTION_UP:当屏幕上唯一的点被放开时触发
  • MotionEvent.ACTION_POINTER_DOWN:当屏幕上已经有一个点被按住,此时再按下其他点时触发。
  • MotionEvent.ACTION_POINTER_UP:当屏幕上有多个点被按住,松开其中一个点时触发(即非最后一个点被放开时)。
  • MotionEvent.ACTION_MOVE:当有点在屏幕上移动时触发。值得注意的是,由于它的灵敏度很高,而我们的手指又不可能完全静止(即使我们感觉不到移动,但其实我们的手指也在不停地抖动),所以实际的情况是,基本上只要有点在屏幕上,此事件就会一直不停地被触发。
附一些关于这方面的链接地址:

http://blog.csdn.net/barryhappy/article/details/7392326

http://www.cnblogs.com/devinzhang/archive/2012/02/27/2369942.html

http://blog.csdn.net/wangdong20/article/details/8561141


原创粉丝点击