您的位置:首页 > 移动开发 > Android开发

浅谈dispatchTouchEvent,onTouch,onTouchEvent,onInterceptTouchEvent

2016-07-07 16:27 435 查看
总所周知,Andorid视图只要分成View和ViewGroup,其中ViewGroup继承自View,其中最重要的区别在于View一般指可见的一块区域,没有子视图,而ViewGroup有子视图。

**1.**dispatchTouchEvent表示是否分发事件,向自身

**2.**Touch事件(包含onTouch和onTouchEvent,其中onTouch在onTouchEvent之前,若onTouch未消费掉事件,则onTouchEvent执行,反之)

**3.**onInterceptTouchEvent 表示是否拦截事件,是否传给子视图(在ViewGroup中才有)

顺序为 dispatchTouchEvent->onInterceptTouchEvent->onTouch->onTouchEvent

当事件传递到最小的子视图 onTouchEvent 依然返回false(未消费事件),则一次向上执行该子视图的父视图的Touch事件,直到最上层的父视图或者有父视图的Touch事件返回ture为止
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android