您的位置:首页 > 移动开发 > Android开发

Android之触摸事件MotionEvent

2016-10-08 22:17 375 查看

Android之触摸事件MotionEvent

今天第一次写博客,就讲简单地写一点触摸事件吧

onTouch方法

它是我们在复写触摸监听时候经常碰到的方法,在这里我们可以获取MotionEvent对象,那么MotionEvent是什么呢?它是当你触摸屏幕时系统将你的动作捕获,并生成一个MotionEvent对象,在这个对象中存储了一大堆信息,如你的触摸时的坐标,触摸面积,触摸时候的压力等等,这里面的信息只要你感兴趣你就可以拿来处理。好了言归正传,我们都知道onTouch这个方法有个返回值,当它返回true时,意思是以后的所有触摸事件他都可以处理了,相反,返回false时,它就只处理按下这一个事件,以后的事件它都不会管了,那个问题来了,它不管的话,谁可以管呢?这就是下面要说的View.onTouchEvent方法。

View.onTouchEvent方法

这个方法呢也很简单,有一个图可以看看



这个U型图详细的介绍了整个触摸机制的处理方式

总结

总之就是你触摸屏幕,系统捕获你的动作封装成MotionEvent对象,调用dispatchTouchEvent来分发事件,这个时候要看它的返回值来确定是自己消费了还是分发给下面去执行了,如果分发下去了就看onTouchEvent的返回值,看它是要处理后续的触摸事件还是只处理一次。

补充一点:onTouch>onTouchEvent

onTouchEvent返回true或false都会屏蔽点击事件,只有返回super…的时候才会去调用点击事件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 触摸屏