1.View的事件分发机制 一个button,简单一点就是onTouch,还有onclick事件,我们一个一个来分析 首先响应的是dispatchTouchEvent 其实,在android源码的命名还是很有规律的,dispatchXXX,也就是分发机制,往往就是第一个需要响应的地方。 我们来分析下 ...
分类:
移动开发 时间:
2016-08-28 08:41:14
阅读次数:
285
请尊重分享成果,转载请注明出处:
http://blog.csdn.net/hejjunlin/article/details/52298780
上篇分析了View的事件分发流程,留了一个问题:如果上面的EventButton继承TextView的话,按下抬起,会有一个现象,我可以告诉大家现象:就是只有dispatchTouchEvent ACTION_DOWN,onTouch ACTION_DO...
分类:
移动开发 时间:
2016-08-24 14:45:00
阅读次数:
264
View布局告一段落,从本篇开始View事件相关分析,今天分析的是View的事件分发机制
View 事件的分发机制
dispatchTouchEvent
onInterceptTouchEvent
onTouchEvent
案例
事件通常重要的有如下三种:
MotionEvent.ACTION_DOWN 按下View,是所有事件的开始
MotionEvent.ACTION_MOVE 滑动事...
分类:
移动开发 时间:
2016-08-23 13:26:13
阅读次数:
179
昨天做东西做到触摸事件冲突,以前也经常碰到事件冲突,想到要研究一下Android的事件冲突机制,于是从昨天开始到今天整整一天时间都要了解这方面的知识,这才懂了安卓的触摸和点击事件的机制。探究如下: 首先重写三个View布局,用来做测试: 然后是MainActivity的xml代码: 然后是MainA ...
分类:
移动开发 时间:
2016-08-10 19:18:22
阅读次数:
369
1,自由的放大和缩小
2.双击放大与缩小
3.放大以后可以进行自由的移动
4.处理与ViewPager之间的的事件冲突
需要用到的知识点
1.Matrix (图片放大,缩小需要用到矩阵)
2.ScaleGestureDetector(检测用户多指触控时缩放的手势)
3.GestureDetector:检测用户双击时需要做的一些处理
4.事件分发机制(当我们图片放大时,我们的图片是可...
分类:
移动开发 时间:
2016-08-01 15:56:33
阅读次数:
280
SwipeRefreshLayout是Android官方的下拉刷新控件,使用简单,界面美观,不熟悉的朋友可以随便搜索了解一下,这里就不废话了,直接进入正题。这种下拉刷新控件的原理不难,基本就是监听手指的运动,获取手指的坐标,通过计算判断出是哪种操作,然后就是回调相应的接口了。SwipeRefreshLayout是继承自ViewGroup的,根据Android的事件分发机制,触摸事件应该是先传递到V...
分类:
移动开发 时间:
2016-07-25 01:50:43
阅读次数:
316
1. 内部拦截法: 父容器不拦截事件,所有的事件全部都传递给子元素,如果子元素需要此事件就直接消耗掉,否则就交给父容器进行处理。 这种方法和Android中的事件分发机制不一样,需要配合requestDisallowInterceptTouchEvent方法才能正常工作,使用起来较外部拦截法稍显负责 ...
分类:
其他好文 时间:
2016-07-24 14:43:57
阅读次数:
871
回想一下,通常在Android开发中,我们最常接触到的是什么东西?显然除了Activity以外,就是各种形形色色的控件(即View)了。
与此同时,一个App诞生的起因,终究是根据不同需求完成与用户的各种交互。而所谓的交互,本质就是友好的响应用户的各种操作行为。
所以说,有很多时候,一个控件(View)出现在屏幕当中,通常不会是仅仅为了摆设,而是还要能够负责响应用户的操作。
以最基本的例子而言...
分类:
移动开发 时间:
2016-07-22 19:29:21
阅读次数:
245
事件分发机制
一.点击事件传播路径
1.点击事件TouchEvent最先是到达Activity的,然后传给Activity对应的window,再传给DecorView,再传给id为content的ViewGroup,即我们通过setContentView设置的ViewGroup,以此到最后的view。我们编程所能控制的由Activity,ViewGroup和View。
2.要把点击事件...
分类:
移动开发 时间:
2016-07-17 17:11:10
阅读次数:
361