1、touch事件从Activity开始向下逐层派发
成都创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、网站建设、巫山网络推广、小程序开发、巫山网络营销、巫山企业策划、巫山品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;成都创新互联公司为所有大学生创业者提供巫山建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com一直派发到焦点控件进行处理
2、如果控件的事件处理方法返回true
则,该控件消费且持续关注此事件
否则,该事件向该控件的上一层容器传递
3、控件的touch监听器的onTouch方法 先于
控件本身的onTouchEvent执行
Touch事件派发和处理的方法
dispatchTouchEvent
onInterceptTouchEvent(只有ViewGroup有该拦截方法)
onTouchListener.onTouch
onTouchEvent
假设一个Activity只包含一个Linearlayout,这个LinearLayout又包含一个TextView。从Log中可以看出
当用户按下这个TextView时,所执行的函数顺序是:
Activity.dispatchTouchEvent
Linearlayout.dispatchTouchEvent
LinearLayout.onInterceptTouchEvent(LinearLayout是ViewGroup)
TextView.dispatchTouchEvent
TextView.onTouchListener.onTouch
TextView.onTouchEvent
LinearLayout.onTouchListener.onTouch
LinearLayout.onTouchEvent
最后是Activity.onTouchEvent
以上是每一层都不消费这个touch事件的情况,即所有方法都return false的情况。
如果任意一个方法消费了这个事件,即返回了true,这种情况下事件只到此方法为止,后面的方法都不执行。而后续事件将也只执行到此方法,即此方法消费并持续关注此事件,如:移动和抬起等后续事件。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。