@Override
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_UP:
Log.i(TAG, "get Sy" + getScrollY());
smoothScrollTo(0, 0);
return mGestureDetector.onTouchEvent(event);
case MotionEvent.ACTION_DOWN:
return mGestureDetector.onTouchEvent(event);

case MotionEvent.ACTION_MOVE:
return mGestureDetector.onTouchEvent(event);
default:
break;

}
return super.onTouchEvent(event);
}

GestureDetector.OnGestureListener   必须在ACTION_UP,ACTION_DOWN,ACTION_MOVE全部传递事件给手势mGestureDetector.onTouchEvent(event);
1、只有 ACTION_UP和ACTION_MOVE并且是抛滑:onFling方法调用,必须两个事件以前传递才有效;
2、只有  ACTION_UP :无方法调用;
 
3、只有 ACTION_MOVE :onScroll方法调用;
4、只有  ACTION_DOWN  :onDown,onShowPress,onLongPress方法调用;
5、只有  ACTION_DOWN,ACTION_UP 并且onDown返回true  :onDown,onShowPress,(长按)onLongPress,(点击)onSingleTapUp方法调用;
6、只有  ACTION_DOWN,ACTION_UP 并且onDown返回false  :onDown,onShowPress,onLongPress方法调用;
7、只有  ACTION_DOWN, ACTION_MOVE并且onDown返回为true:onDown, onScroll 方法调用;
8、只有  ACTION_DOWN, ACTION_MOVE并且onDown返回为false:onDown ,onShowPress,onLongPress 方法调用;
9、只有  ACTION_DOWN,ACTION_UP, ACTION_MOVE并且onDown返回为false:onDown ,onShowPress,onLongPress 方法调用;
10、只有  ACTION_DOWN,ACTION_UP, ACTION_MOVE并且onDown返回为true:onDown , onScroll , 是抛滑onFling 方法调用;
 
 
总结:1、只有在ACTION_DOWN调用是,onDown 返回true,才有可能调用onFling  ,onScroll方法;
2、只有ACTION_MOVE 调用是,onFling  ,onScroll方法才回调用;
3、onFling方法调用,还取决ACTION_MOVE 时调用;
4、(点击)onSingleTapUp方法调用,只有  ACTION_DOWN,ACTION_UP 并且onDown返回true  ;
 

手势GestureDetector.OnGestureListener事件的调起的更多相关文章

  1. GestureDetector.OnGestureListener

    为了加强鼠标响应事件,Android提供了GestureDetector手势识别类.通过GestureDetector.OnGestureListener来获取当前被触发的操作手势(Single Ta ...

  2. android学习——GestureDetector.OnGestureListener 详解

    Android Touch Screen 与传统Click Touch Screen不同,会有一些手势(Gesture),例如Fling,Scroll等等.这些Gesture会使用户体验大大提升.An ...

  3. Android 手势&触摸事件 MotionEvent

    1.http://blog.csdn.net/omg_2012/article/details/7881443 这篇相当好啊 2.http://blog.csdn.net/android_tutor/ ...

  4. 关于GestureDetector.OnGestureListener的onScroll参数distance问题

    关于GestureDetector.OnGestureListener类的onScroll方法参数distanceX和distanceY问题 看到有文章上说onScroll方法中distanceX和d ...

  5. 背水一战 Windows 10 (69) - 控件(控件基类): UIElement - Manipulate 手势处理, 路由事件的注册, 路由事件的冒泡, 命中测试的可见性

    [源码下载] 背水一战 Windows 10 (69) - 控件(控件基类): UIElement - Manipulate 手势处理, 路由事件的注册, 路由事件的冒泡, 命中测试的可见性 作者:w ...

  6. Ionic4.x Javascript 扩展 ActionSheet Alert Toast Loading 以及 ionic 手势相 关事件

    1.ActionSheet 官方文档:https://ionicframework.com/docs/api/action-sheet <ion-header> <ion-toolb ...

  7. 利用扩展事件进行调优和Troubleshooting PPT分享

        本篇主题是我在2015年中国数据库大会(DTCC)上的分享,扩展事件从2008版本出来到现在已经有6-7年,国内却很少有相关资料和使用,现在分享一下PPT,希望对大家有所帮助.       可 ...

  8. 说说GestureDetector.OnGestureListener onScroll函数

    public abstract boolean onScroll (MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) ...

  9. ASYNC_NETWORK_IO等待事件和调优

    测试反应测试数据库整体出现hang的情况,检查对应的等待事件,发现大量的resource_semaphore等待事件, 查看内存占用情况: ​SELECT  *  FROM    sys.dm_exe ...

随机推荐

  1. C# 用Mutex或进程限制一台电脑上同时打开多个实例

    private void Form1_Load(object sender, EventArgs e)        {            bool requestInitialOwnership ...

  2. 网络请求工具 cURL

    网络请求工具 cURL 2017-08-16 cRUL 是一种命令行工具,作用是发出网络请求,然后得到和提取数据,显示在“标准输出”(stdout)上面. 查看网页源码 1 $ curl baidu. ...

  3. jfreechart 在jsp页面显示所画的图片(resin服务器的servelet配置是关键)(图片只过内存)

    用的web服务器是resin服务器,在配置web.xml时需要注意,其实resin服务器的web.xml服务器配置和tomcat服务器的配置很像, 1. 我第一次按照自己的想法,想当然的在resin- ...

  4. Jira简单使用操作指引20150605

    1.选择项目 2.点击[问题]——>[所有问题] 3.选择状态(一般开发关注[新增.处理中],测试关注[已解决.已作废]) 4.选择[more],勾选[解决版本].[影响版本].[解决人],我们 ...

  5. iOS开发-UITextView文字排版

    UITextView文本排版 1.配置NSMutableParagraphStyle NSMutableParagraphStyle *MParaStyle = [[NSMutableParagrap ...

  6. 在Fragment中加一个嵌套了ListView的ScrollView(一)

    首先介绍一下这个程序的功能: 1.顶部有两个可以切换Fragment的Button 2.在其中一个Fragment中里有个ScrollView,ScrollView中有ViewFlipper,List ...

  7. MpVue开发之组件引入的问题

    再一次开发订餐系统中,遇到订餐页面引入头部商品列表,底部组件时,报错,模块编译失败,未进入缓存区. 我以为是新添加的模块没有重新启动导致的,然后重新与运行npm run dev后还是失败, 最后经过反 ...

  8. Git详解之十 Git常用命令

    下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一. ...

  9. 在IIS上搭建FTP站点

    操作环境 系统:win7 IIS版本:7.5 FTP传输工具:FlashXP 概述 本文介绍了如何在win7下利用IIS(默认已安装IIS和FTP功能)搭建FTP站点,FTP站点的常用配置. 快速搭建 ...

  10. JAVA多线程----用--进阶--》网络编程1

    http://www.cnblogs.com/springcsc/archive/2009/12/03/1616413.html 一个服务器端一般都需要同时为多个客户端提供通讯,如果需要同时支持多个客 ...