九天猎人 发表于 前天 01:43

kotlin Android事件分发

kotlin Android事件分发
事件由Activity的dispatchTouchEvent开始做分发,true表示消费,事件不再继承往上传递。
dispatchTouchEvent事件:由Activity -> ViewGroup -> View
onInterceptTouchEvent事件: 只有ViewGroup存在事件拦截, true为拦截
onTouchEvent: 由View -> ViewGroup -> Activity

1、 自己消费,终结传递。------->return true;
2、 给自己的onTouchEvent处理-------> 调用super.dispatchTouchEvent()系统默认会去调用 onInterceptTouchEvent,在onInterceptTouchEvent return true就会去把事件分给自己的onTouchEvent处理。
3、 传给子View------>调用super.dispatchTouchEvent()默认实现会去调用 onInterceptTouchEvent 在onInterceptTouchEvent return false,就会把事件传给子类。
4、 不传给子View,事件终止往下传递,事件开始回溯,从父View的onTouchEvent开始事件从下到上回归执行每个控件的onTouchEvent------->return false;

https://i-blog.csdnimg.cn/direct/f5e4a3a5323a4ac189380a234834d389.jpeg

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: kotlin Android事件分发