在android开发中会经常遇到滑动冲突(比如ScrollView或是SliddingMenu与ListView的嵌
套)的问题,需要我们深入的了解android事件响应机制才能解决,事件响应机制已经是android
开发者必不可少的知识。面试找工作的时候也是面试官经常会问的一个问题。
1.涉及到事件响应的常用方法构成
用户在手指与屏幕接触过程中通过MotionEvent对象产生一系列事件,它有四种状态:
MotionEvent.ACTION_DOWN :手指按下屏幕的瞬间(一切事件的开始)
MotionEvent.ACTION_MOVE :手指在屏幕上移动
MotionEvent.ACTION_UP :手指离开屏幕瞬间
MotionEvent.ACTION_CANCEL :取消手势,一般由程序产生,不会由用户产生
Android中的事件onClick, onLongClick,onScroll, onFling等等,都是由许多个Touch事件构
成的(一个ACTION_DOWN, n个ACTION_MOVE,1个ACTION_UP)。
android 事件响应机制是先分发(先由外部的View接收,然后依次传递给其内层的最小
View)再处理(从最小View单元(事件源)开始依次向外层传递。)的形式实现的。
复杂性表现在:可以控制每层事件是否继续传递(分发和拦截协同实现)&