前言

有时候我们需要知道滑动速度来进行一些处理,这就需要用到VelocityTracker,通过它我们可以很方便的得到滑动速度。

使用

首先创建一个VelocityTracker对象

var tracker = VelocityTracker.obtain()

然后在onTouchEvent函数的一开始添加一下:

override fun onTouchEvent(event: MotionEvent?): Boolean {tracker.addMovementEvent(event)...

这样就开始监听滑动了,然后我们在ACTION_UP事件中收集速度,代码如下:

MotionEvent.ACTION_UP -> {tracker.computeCurrentVelocity(1000)val xVelocity = tracker.xVelocityval yVelocity = tracker.yVelocity...tracker.clear()
}

先执行computeCurrentVelocity函数,它的参数是我们获取的速度的单位,1表示 1像素/毫秒,所以代码中1000则代码速度单位时1像素/秒。

然后通过getXVelocitygetYVelocity来分别获取两个方向上的速度即可。

最后一定要执行clear来重置一下。

如果确定不再使用这个VelocityTracker,可以执行recycle释放。

关注公众号:BennuCTech,获取更多干货!

滑动速度监听VelocityTracker相关推荐

  1. android listview ontouchlistener,Android ListView监听滑动事件的方法(详解)

    ListView的主要有两种滑动事件监听方法,OnTouchListener和OnScrollListener 1.OnTouchListener OnTouchListener方法来自View中的监 ...

  2. android 标题栏颜色渐变和阴影,ScrollView上下滑动监听,及判断scrollView是否滚动到底部

    1.创建  ScrollListener 接口监听滑动距离 public interface ScrollListener {void onScrollChanged(ScrollListenerVi ...

  3. Android VelocityTracker 滑动速度追踪

    前言 应用开发过程中,会有类似这样的需求,检测手指滑动距离或在某一个方向的滑动速度,当滑动距离或在某一个方向的滑动速度达到临界值时,将 View 消失或进行其他的业务逻辑处理. 滑动距离通过记录 do ...

  4. Android——RecyclerView自定义OnScrollListener实现下拉刷新监听,上拉加载更多功能

    目录 [前言] 1.OnScrollListener滑动事件监听抽象类 2.利用onScrollStateChanged及onScrolled方法实现下拉刷新及上拉加载更多

  5. RecyclerView跳转到指定位置,RecyclerView上下滑动监听,RecyclerView滑动速度

    1.RecyclerView跳转到指定位置 只需调用recycleview的置顶方法: recyclerView.scrollToPosition(15); 如果你需要让第15item在屏幕居中,只需 ...

  6. Android中手势滑动监听简单实现

    文章目录 背景 实现 手势监听器的声明和创建 对重写的相关方法 onScroll() 说明 手势监听器接管View的触屏事件 验证结果 背景 项目中要实现控件的滑动监听其实还是挺常见的,这里就简单的做 ...

  7. Android监听左右滑删除通知,Android 滑动监听RecyclerView线性流+左右划删除+上下移动...

    废话不多说了,直接给大家贴代码了.具体代码如下所示: xmlns:tools="http://schemas.android.com/tools" android:layout_w ...

  8. Android监听ScrollView滑动到顶端和底部

    package cn.testscrollview; import android.os.Bundle; import android.view.MotionEvent; import android ...

  9. Android 监听ScrollView的滑动

    有时候我们需要监听ScroView的滑动情况,比如滑动了多少距离,是否滑到布局的顶部或者底部.可惜的是SDK并没有相应的方法,不过倒是提供了一个 protected void onScrollChan ...

  10. recyclerview滑动到顶部和底部监听+上滑下滑监听

    到达顶部和底部监听 判断是否滑动到底部, recyclerView.canScrollVertically(1);返回false表示不能往上滑动,即代表到底部了: 判断是否滑动到顶部, recycle ...

最新文章

  1. 6次课(相对和绝对路径、cd命令、创建和删除目录mkdir/rmdir、rm命令)
  2. 问题 B: 分组统计
  3. C语言编码小球斜抛运动,利用C4droid绘制小球斜抛运动轨迹(考虑空气阻力)
  4. CTR预估中GBDT与LR融合方案
  5. CentOS 分区方案
  6. 鸿蒙系统发布IT直播,华为开源平台上线:鸿蒙系统、方舟编译器在列
  7. 进入hadoop_hadoop:伪分布模式参数配置指南
  8. 实战:基于OpenCV进行长时间曝光
  9. Java开发全套学习!java判断字符串中是否包含中文
  10. 181027每日一句
  11. 侠客行手游java游戏,侠客行-侠客行手游下载 - 超好玩
  12. 安装新版的winetricks_20170506-最新WineQQ8.9.1安装教程和常见问题解决方法
  13. Java 实现批量静默打印PDF文件
  14. 基于ssm框架的绩效管理系统
  15. 串口COM线转USB的console线无法更新驱动
  16. 【无标题】抖音 s_v_web_id
  17. 老毛子固件路由器挂载usb摄像头
  18. 安卓打开cbr文件_什么是CBR和CBZ文件,为什么将它们用于漫画?
  19. 矩阵的逆(性质、求法)
  20. 搜狗开源内部项目管理系统Cynthia,已被数十家企业采用

热门文章

  1. 程序员必须要熟知的英文单词--更新中
  2. 【高手分享】熟知Win7系统(英文版)分区14个小步骤
  3. 大气数据计算机英语,大气数据计算机(ADC)
  4. Tomcat控制台中文乱码怎么处理[已解决 绝对好用]
  5. 有哪些计算机软件可以录制声音,有什么录制电脑系统声音的软件
  6. PHP字符串解析函数
  7. 想自学PLC编程该按什么步骤来?
  8. Matlab 口罩识别
  9. 怎样登陆微信公众号?怎样登陆微信公众号后台?
  10. catia曲面设计从入门到精通_CATIA V5曲面设计从入门到精通