android 事件分发 点击事件 ondispathTouchEvent onTouchEvent onInterceptTouchEvent
来源:互联网 发布:淘宝网穿越火线人物 编辑:程序博客网 时间:2024/04/29 21:55
事件分发
调用顺序:
dispatchTouchEvent()–>onInterceptTouchEvent()–>onTouchEvent()
DispathTouchEvent():
描述:是否分发事件
Default:true
不分发:false
分发事件:true
分发消息至当前控件的onTouchEvent()方法并将该事件传递至子控件(如果有的话),默认为分发,如果设置为false,则该事件不会被分发至自身的onTouchEvent(),如果ACTION_DOWN不分发,则后续动作都无法捕捉到,例如ACTION_MOVE或者ACTION_UP. 存在子控件时调用顺序为:最外层父控件-》里层父控件-》子控件
注意:DispathTouchEvent源码中,有调用onInterceptTouchEvent和onTouchEvent()
如果单纯返回true,或者false而不去执行super.dispathTouchEvent()的话,将不会调用到里面的这两个方法,从而导致事件无法传递至下一控件,返回false,只能监听到ACTION_DOWN,返回true的话只在该层的dispathTouchEvent方法中接收到事件,不会在自身和子组件中被监听到
OnInterceptTouchEvent
描述:是否拦截事件
Default:false
拦截:true
不拦截:false
拦截当前控件的屏幕事件,默认为不拦截,事件到达后开始传递至子控件的DispathTouchEvent(),如果设置为true,则该事件不会传递到子控件。存在子控件时调用顺序为:最外层父控件-》里层父控件,注意,该方法为ViewGroud里面的方法,子控件若未继承ViewGroud则无此方法,例如TextView..
OnTouchEvent
描述:是否处理、消费当前的事件
Default:false
处理:true
不处理:false
是否处理当前控件的屏幕事件,默认为不处理,如果设置为true,表示当前对该屏幕事件有消费处理。注意,如果要处理ACTION_MOVE,ACTION_CANCLE等事件,必须先对ACTION_DWON进行消费处理,即if(motion_evtion.getAction() == ACTION_DOWN){Return true;}
这样才能接收到后续的事件。
- android 事件分发 点击事件 ondispathTouchEvent onTouchEvent onInterceptTouchEvent
- Android事件分发onInterceptTouchEvent与onTouchEvent
- android 事件分发 拦截 (onInterceptTouchEvent dispatchTouchEvent onTouchEvent)
- Android 事件分发onInterceptTouchEvent和onTouchEvent整理
- Android 事件分发(dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent)
- Android的事件分发onInterceptTouchEvent与onTouchEvent、OnClickListener、OnLongClick
- Android的事件分发机制 ---dispatcTouchEvent、onInterceptTouchEvent、onTouchEvent
- Android onTouchEvent和onInterceptTouchEvent事件分发详解(一)
- Android onTouchEvent和onInterceptTouchEvent事件分发详解(二)
- Android onTouchEvent和onInterceptTouchEvent事件分发详解(三)
- android 事件分发,onInterceptTouchEvent()和onTouchEvent()总结,OnTouchListener。
- dispatchTouchEvent(),onInterceptTouchEvent()和onTouchEvent()的事件分发
- android 点击事件触发机制dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent
- Android中事件分发处理MotionEvent事件在onInterceptTouchEvent()、onTouchEvent()中的传递顺序【转】
- onInterceptTouchEvent与onTouchEvent事件
- 事件onInterceptTouchEvent和onTouchEvent
- Android进阶——Android事件分发机制之dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent
- android ViewGroup的onInterceptTouchEvent 和 onTouchEvent事件
- 基站定位APP的开发
- sap信贷管理的操作流程
- 状态模式——随遇而安
- 网盘背后的秘密(稍作修改)
- 正则化理解(一)
- android 事件分发 点击事件 ondispathTouchEvent onTouchEvent onInterceptTouchEvent
- java正则表达式提取数字、英文、中文
- hdu 1097 A hard puzzle (快速幂取模)
- codevs1154能量项链
- myeclipse开发相关问题
- 读书笔记-->Java虚拟机垃圾收集算法
- 关于JS中的this记录
- eclipse 使用教程
- 2016年2月3日,快除夕了,我在做支付宝【移动支付】时遇到的问题的解决办法