美文网首页
Android View的事件分发流程(简单理解)

Android View的事件分发流程(简单理解)

作者: Preupen | 来源:发表于2018-12-11 18:28 被阅读0次

一.事件分发流程

事件分发从Activity到PhoneWindow在到DecorView

二.伪代码来表示其之间的关系

public boolean dispatchTouchEvent(MotionEvent ev) {
        boolean consume = false;//事件是否被消费
        if (onInterceptTouchEvent(ev)){//调用onInterceptTouchEvent判断是否拦截事件
            consume = onTouchEvent(ev);//如果拦截则调用自身的onTouchEvent方法
        }else{
            consume = child.dispatchTouchEvent(ev);//不拦截调用子View的dispatchTouchEvent方法
        }
        return consume;//返回值表示事件是否被消费,true事件终止,false调用父View的onTouchEvent方法
    }

三.理解入下图

图一
图二

相关文章

网友评论

      本文标题:Android View的事件分发流程(简单理解)

      本文链接:https://www.haomeiwen.com/subject/duvehqtx.html