ViewGroup和子View的Touch事件分析
来源:互联网 发布:手机知乎怎么发表文章 编辑:程序博客网 时间:2024/04/29 16:08
一. 名词解释
ViewGroup: A ViewGroup
is a special viewthat can contain other views (called children.)
The view group is the baseclass for layouts and views containers.
View: This class represents the basic buildingblock for user interface components.
ViewGroup包含多个View
二. ViewGroup和View触摸事件返回值意义
ViewGroup中两个触摸方法
1. OnInterceptTouchEvent(MotionEventev)
当ACTION_DWON触发函数return false时,后续的ACTION_MOVE,ACTION_UP等事件也会先传递给OnInterceptTouchEvent方法,
并将一系列事件传递给子View的Touch事件
当ACTION_DWON触发函数return true时,后续的ACTION_MOVE,ACTION_UP等事件不会先传递给OnInterceptTouchEvent方法,
也不会传递给子View的Touch事件,而是传递给ViewGroup的OnTouchEvent事件。
2. OnTouchEvent(MotionEventev)
该方法的返回值机理与键盘响应事件的相同,同样是当已经完整地处理了该事件且不希望其他回调方法再次处理时返回true,否则返回false。
三. ViewGroup和子View触摸事件流程
1.滑动流程:
OnIterceptOnTouchEvent 代号:void1
OnTouchEvent 代号:void2
当手指触摸屏幕时,这时将触发viewgroup的void1方法的ACTION_DOWN方法,返回值为false,
然后触发void1方法的ACTION_MOVE方法,这时会有一个计算判断,当手指的位置发生偏移时,
证明用户想滑动页面,这时return ture,将ACTION_MOVE这个动作传递给void2后续触摸事件将不会触发void1,
而void2根据左边来相应的进行绘图滑动。结束时触发void2的ACTION_UP动作,继而告诉系统触摸事件完成。
3. 点击流程:
当手指触摸屏幕时,这时将触发viewgroup的void1方法的ACTION_DOWN方法,返回值为false,
将ACTION_DOWN动作传递给子view的触摸事件,然后触发void1方法的ACTION_MOVE方法,这时会有一个计算判断,
当手指的位置未发生偏移时,证明用户想点击子view,这时return false,将ACTION_MOVE这个动作传递给子view的触摸事件,
return false,然后用户将手指抬起,这时void1的ACTION_UP动作出发并传递给子view的触摸事件。
子view处理了一整套donw,move,up事件,即点击事件完成。整个过程中完全不会触发ViewGroup的void2.
- ViewGroup和子View的Touch事件分析
- 【Android 1.6】View和ViewGroup的touch事件分析和总结
- android中View和ViewGroup对touch事件对象的处理方法
- Andriod View ViewGroup的Touch事件的分发机制
- View,ViewGroup的Touch事件的分发机制
- View,ViewGroup的Touch事件的分发机制
- Andriod 详解View,ViewGroup的Touch事件的分发机制
- View 和 ViewGroup的分析
- ViewGroup的touch事件总结
- Android ViewGroup和View的传递事件
- ViewGroup和View的事件传递原理
- View和ViewGroup的事件拦截机制
- ViewGroup和View的事件分发机制
- View和ViewGroup的事件分发总结
- View和ViewGroup的事件分发笔记
- Android的View和ViewGroup分析
- Android的View和ViewGroup分析 .
- Android的View和ViewGroup分析
- ISM频段
- linux,centos下解压tar,gz,bz2,tgz,zip等
- hdu2918---IDA*
- 唯美的爱情这就是爱情
- 霸王pad
- ViewGroup和子View的Touch事件分析
- 未来十年,你的人生目标在哪里?
- C语言解析文本的程序 && sscanf/sprintf
- 《学习openCV》例程解析 ex_9_1 (像素片段)
- <WP7>(六)手把手教你写天气预报程序:使用Isolatedstorage保存设置
- Delphi New,Getmem,ReallocMem联系与区别
- 数组、泛型 相互转换
- 在C#下的winform 窗体把控件置于顶层和底层 .
- as:为什么循环结构无法产生动画