GestureDetector的简单使用

概述

我们都知道,手指触摸屏幕时会产生一系列的事件,如手指刚按下会产生DOWN事件,移动产生MOVE事件,松开产生UP事件。为了与用户进行友好的交互,我们的程序往往需要检测这一系列的事件,从而将它们解释成一个既定的手势,最后做出准确的响应。例如,当用户用手指在屏幕上画出一个圆形,这将产生一些列的触摸事件DOWN-MOVE-MOVE-...UP,然后程序检测到这些事件后进行一定的分析,确定这是一个圆形手势,最后程序对这个手势(画圆)做出相应的操作,如亮屏。
这里涉及到两个问题:
  • 如何获取触摸事件
  • 如何检测手势并做出响应
第一点很好回答,用户触摸View产生事件会回调onTouchEvent方法,在这个方法中就可以获取所有的触摸事件。当然,具体是哪个View接收到这些事件,这与View的事件分发机制相关,由于本篇文章并不是讲这个的,所以就不详细解释了,不懂的小伙伴可以自行谷歌相应的文档进行学习。
至于第二点,就和本篇的主人公GestureDetector有着大大的关联了。检测手势是在获取触摸事件的基础上做的,因而也是在onTouchEvent中进行,通常情况下,这个检测手势的工作是由我们来做的,比如,我们判断到在很短的时间内连续接收到了两次DOWN事件,那么我们有理由认为这是一个双击操作。幸运的是,为了减少我们的工作量,谷歌提供了一个类专门用于检测手势,它自然就是GestureDetector了,这个类的使用非常简单,废话不多说,直接开搞。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值