个人原创

OnDown(MotionEvent e):用户触发DonenEvent就会执行
onShowPress(MotionEvent e):用户触发DonenEvent后,在很短大概0.5秒内,没有触发其他MoveEventh和UpEvent事件,会执行
onLongPress(MotionEvent e):用户触发DonenEvent后,在很短大概1.5秒内,没有触发其他MoveEventh和UpEvent事件,会执行
    触发顺序:
    onDown->onShowPress->onLongPress
onSingleTapUp(MotionEvent e):用户触发DonenEvent后,在很短大概1秒内,只触发UpEvent而没有出发触发MoveEventh时执行,从时间上能判断出在onSingleTapUp之前可能执行onShowPress,但一定不执行onLongPress
    触发顺序:
    点击一下非常快的(不滑动)Touchup:
    onDown->onSingleTapUp->onSingleTapConfirmed 
    点击一下稍微慢点的(不滑动)Touchup:
    onDown->onShowPress->onSingleTapUp->onSingleTapConfirmed
onScroll(MotionEvent e1, MotionEvent e2,float distanceX, float distanceY):用户触发DonenEvent后,在onLongPress执行之前触发MoveEventh时执行,此后MoveEventh都会触发onScroll执行
    e1:第1个ACTION_DOWN MotionEvent
    e2:最后一个ACTION_MOVE MotionEvent
    distanceX:上次MoveEventh到这次MoveEventh在x上移动距离
    distanceY:上次MoveEventh到这次MoveEventh在y上移动距离

滑屏:手指触动屏幕后,稍微滑动后立即松开
    onDown-----》onScroll----》onScroll----》onScroll----》………----->onFling
    拖动
    onDown------》onScroll----》onScroll

onDown------》onScroll----》onScroll------》onFiling

注意:有的时候会触发onFiling,但是有的时候不会触发,这是因为触发onFiling需要拖动达到一定速度才会执行。

onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY) :用户触发   onScroll事件后,在触发UpEvent时,拖动达到一定速度时触发
     参数解释:
    e1:第1个ACTION_DOWN MotionEvent
    e2:最后一个ACTION_MOVE MotionEvent
    velocityX:X轴上的移动速度,像素/秒
    velocityY:Y轴上的移动速度,像素/秒

onSingleTapConfirmed(MotionEvent e):单击确认事件   触发OnsingleTapUp事件后,在很短大概0.5秒内没有再次顺序触发 OnDown和UpEvent事件时执行    

触发顺序是:OnDown->OnsingleTapUp->OnsingleTapConfirmed

onDoubleTap(MotionEvent e):双击事件  触发OnsingleTapUp事件后,在很短大概0.5秒内再次顺序触发 OnDown和UpEvent事件时执行,  注意在 大概0.5秒内一定触发DownEvent和UpEventUpEvent 事件,可能触发MoveEventhMoveEvent事件UpEventOnDown和UpEvent事件OnDown和UpEvent事件UpEvent事件

onDoubleTapEvent(MotionEvent e): 在触发onDoubleTap事件后执行,将在OnsingleTapUp事件和onDoubleTap事件中间所触发的所有EventTouch事件一个个处理,

触发顺序是:OnDown->OnsingleTapUp->(中间一定执行DownEventDownEvent和UpEvent可能执行MoveEvent事件OnDown可能)->onDoubleTap->onDoubleTapEvent(DownEventDownEvent )触发至少两次次,参数依次为中间发生的事件->onDoubleTapEvent(DownEventDownEvent downEvent)

GestureDetector 完全解析的更多相关文章

  1. Viewdraghelper解析

    2013年谷歌i/o大会上介绍了两个新的layout: SlidingPaneLayout和DrawerLayout,现在这俩个类被广泛的运用, 其实研究他们的源码你会发现这两个类都运用了ViewDr ...

  2. Android RecyclerView单击、长按事件标准实现:基于OnItemTouchListener + GestureDetector

     Android RecyclerView单击.长按事件:基于OnItemTouchListener + GestureDetector标准实现 Android RecyclerView虽然拥有L ...

  3. Android之解析GML并显示

    本例主要实现在APP中解析GML数据并显示 GML,地理标记语言(外语全称:Geography MarkupLanguage.外语缩写:GML),它由开放式地理信息系统协会(外语缩写:OGC)于199 ...

  4. ViewPagerindicator 源码解析

        ViewPagerindicator 源码解析   1. 功能介绍 1.1 ViewPagerIndicator ViewPagerIndicator用于各种基于AndroidSupportL ...

  5. SubsamplingScaleImageView 源码解析

    一开始没打算分析 SubsamplingScaleImageView 这个开源的图片浏览器的,因为这个库在我们 App 中使用了,觉得自己对这个库还是比较熟悉的,结果某天再看看到源码介绍的时候,才发现 ...

  6. 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新

    本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...

  7. .NET Core中的认证管理解析

    .NET Core中的认证管理解析 0x00 问题来源 在新建.NET Core的Web项目时选择“使用个人用户账户”就可以创建一个带有用户和权限管理的项目,已经准备好了用户注册.登录等很多页面,也可 ...

  8. Html Agility Pack 解析Html

    Hello 好久不见 哈哈,今天给大家分享一个解析Html的类库 Html Agility Pack.这个适用于想获取某网页里面的部分内容.今天就拿我的Csdn的博客列表来举例. 打开页面  用Fir ...

  9. 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新

    [原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...

随机推荐

  1. IOS开发学习笔记028-UITableView单组数据显示代码优化

    1.如果表格中又几百条数据的话,系统会自动加载显示在界面上得数据,逐一加载 添加100个数据到UITableView中 ; i < ; i ++) { NSString *icon = [NSS ...

  2. ogre3D学习基础12 --- 让机器人动起来(移动模型动画)

    学了那么长时间,才学会跑起来.My Ogre,动起来. 第一,还是要把框架搭起来,这里我们用到双端队列deque,前面已经简单介绍过,头文件如下: #include "ExampleAppl ...

  3. appium环境搭建(python+windows)

    1.搭建Android开发环境 参见:http://blog.sina.com.cn/s/blog_44d19b500102voa7.html   2.安装Node.js 下载地址:https://n ...

  4. Python-S9-Day87——admin的使用

    01 admin的使用1 02 admin的使用2 03 admin的使用3 04 url方法的使用 05 单例模式 06 admin源码之注册功能 07 admin源码之url设计 08 admin ...

  5. excel模板解析前后设计变化,以及我对此的看法和感受

    前言:近期也在做Excel模板的解析工作,目前来说,应该是第三版了.我最开始做的,就是垒鸡窝,虽然考虑了1.0提出的关于excel解析的一些建议和问题(单个模板),但是真的毫无设计可言.就几个工具类, ...

  6. 【转】unity下的Line of Sight(LOS)的绘制

    http://www.cnblogs.com/yangrouchuan/p/6366629.html 先说说什么是Linf of Sight.在很多RTS游戏中,单位与单位之间的视野关系经常会受到障碍 ...

  7. CF 964C Alternating Sum

    给定两正整数 $a, b$ .给定序列 $s_0, s_1, \dots, s_n,s_i$ 等于 $1$ 或 $-1$,并且已知 $s$ 是周期为 $k$ 的序列并且 $k\mid (n+1)$,输 ...

  8. 简单数据结构题(from 钟子谦——IOI2018集训队自选题)

    简单数据结构题(from 钟子谦--IOI2018集训队自选题) 试题描述 给一棵 \(n\) 个点的树,点权开始为 \(0\) ,有 \(q\) 次操作,每次操作是选择一个点,把周围一圈点点权 \( ...

  9. bzoj3680吊打GTY

    题意:http://www.lydsy.com/JudgeOnline/problem.php?id=3680 sol  :吊打出题人(逃~ puts("nan") 出题人题解:h ...

  10. ionic2实战-使用Chart.js

    前言 Chart.js官网 Chart.js中文文档 安装Chart.js 执行cnpm install typings -g,全局安装Typings 执行typings search chart.j ...