Android 屏幕滑动事件
http://blog.csdn.net/iamfafa/article/details/6316062
Android里有两个类
android.view.GestureDetector
android.view.GestureDetector.SimpleOnGestureListener
(另外android.widget.Gallery好像是更牛x的OnGestureListener )
1)新建一个类继承SimpleOnGestureListener,HahaGestureDetectorListener
可以实现以下event事件。
boolean onDoubleTap(MotionEvent e)
解释:双击的第二下Touch down时触发
boolean onDoubleTapEvent(MotionEvent e)
解释:双击的第二下Touch down和up都会触发,可用e.getAction()区分。
boolean onDown(MotionEvent e)
解释:Touch down时触发
boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
解释:Touch了滑动一点距离后,up时触发。
void onLongPress(MotionEvent e)
解释:Touch了不移动一直Touch down时触发
boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY)
解释:Touch了滑动时触发。
void onShowPress(MotionEvent e)
解释:Touch了还没有滑动时触发
(与onDown,onLongPress比较
onDown只要Touch down一定立刻触发。
而Touchdown后过一会没有滑动先触发onShowPress再是onLongPress。
所以Touchdown后一直不滑动,onDown->onShowPress->onLongPress这个顺序触发。
)
boolean onSingleTapConfirmed(MotionEvent e)
boolean onSingleTapUp(MotionEvent e)
解释:上面这两个函数都是在touch down后又没有滑动(onScroll),又没有长按(onLongPress),然后Touchup时触发。
点击一下非常快的(不滑动)Touchup:
onDown->onSingleTapUp->onSingleTapConfirmed
点击一下稍微慢点的(不滑动)Touchup:
onDown->onShowPress->onSingleTapUp->onSingleTapConfirmed
2)在view的新建一个GestureDetector的对象。
构造函数里 gestureDetector = new GestureDetector(new HahaGestureDetectorListener());
然后在View的onTouchEvent里以下这样用,就可以在刚才1)弄的事件里写自己的代码了。
@Override
public boolean onTouchEvent(MotionEvent event) {
gestureDetector.onTouchEvent(event);
}
但是,郁闷的是SimpleOnGestureListener没有提供onUp(), 还得在View的
onTouchEvent的
case MotionEvent.ACTION_UP:
里来写对应的代码。
Android 屏幕滑动事件相关推荐
- android ViewPager滑动事件讲解
首先ViewPager在处理滑动事件的时候要用到OnPageChangeListener OnPageChangeListener这个接口需要实现三个方法:(onPageScrollStateChan ...
- Android之滑动事件冲突解决 Touch事件处理机制总结
android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解. 一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN- ...
- android 横向滑动事件,android左右手势滑动事件处理
建了个交流群:416157653,欢迎大家加入讨论 要实现手指在屏幕上左右滑动的事件需要实例化对象GestureDetector,new GestureDetector(MainActivity.th ...
- 通过广播获取Android屏幕旋转事件
Android获取系统屏幕旋转的方式有几种,其中比较常见的是通过重写Activity中的onConfigurationChanged方法,但是这种方法有个缺陷,当测试程序在后台运行的时候不能 ...
- android 屏幕触摸事件及处理机制解读
原创性声明:本文系作者原创,转载请附原文地址:http://blog.csdn.net/a774057695/article/details/49336123 最近实在太忙,没有写多少东西,上次承诺写 ...
- android 触摸 事件,Android触屏事件和MotionEvent详解
Android屏幕操作 屏幕是用户和Android设备交互的主要媒介,屏幕分为触屏和非触屏.Android设备目前有四种类型:Android Phone,Android Tablet,Android ...
- Android手势滑动(左滑和右滑)
最近想实现Android左滑弹出菜单框,右滑消失菜单这个个功能.了解了一下Android 的滑动事件,必须是在view组件或者Activity上实现,同时必须实现OnTouchListener, On ...
- android 触摸监听重写_Android监听屏幕的滑动事件
实现监听屏幕上下左右滑动事件 前段时间为了实现这个功能在网上找了很多教程,发现很多教程都是很大的篇幅,对于像我这种一点都不了解的人GestureListener的人来说可能很难理解,动不动就是几百行代 ...
- Android监听屏幕的滑动事件
实现监听屏幕上下左右滑动事件 前段时间为了实现这个功能在网上找了很多教程,发现很多教程都是很大的篇幅,对于像我这种一点都不了解的人GestureListener的人来说可能很难理解,动不动就是几百行代 ...
最新文章
- php rabbmq教程_RabbitMQ+PHP 教程六(RPC)
- IOS中UITableView异步加载图片的实现
- .NET Core开发日志——OData
- 海外服务器维护,海外服务器运行不正常的原因是什么?
- mysql查询当月数据_MySQL百万数据,你如何用分页来查询数据
- [转]RDLC 动态列
- 用Eclipse远程调试部署在Tomcat下的Web应用程序
- 关于DatetTime?
- 在微信小程序中使用条形码生成器
- PMP项目管理全套表格史上最全,建议收藏
- AD15的PCB设计流程及基本设置
- 关于html的实训日志,满足你的甜蜜幻想, 《我与她的实习日志》登陆NS
- C语言实现扫雷小游戏
- 汽车车牌自动识别技术
- 小巧精美原厂轴 Cherry发布全新MX Board 1.0
- 杭电 2072 单词数(题解+代码)
- 蓝牙架构(6)—— 3 数据传输架构(3.1 核心传输载体)
- centos7 BBR加速
- php语言开发的cms,YzmCMS
- 利用DGL中的消息传递API手搭GCN实现节点分类
热门文章
- 众多Android 开源项目推荐,给力工作给力学习
- atlsoap.h”: No such file or directory
- python 二维数组赋值_python日常注意小知识集锦
- 神经网络与机器学习 笔记—反向传播算法(BP)
- POJ2118基础矩阵快速幂
- 【FFmpeg】ffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )
- 进程 互斥锁、队列与管道、生产者消费者模型
- Quzrtz.net 示例
- 2019/1/14,15 Python今日收获
- selenium 浏览器driver地址