美文网首页
Android开发艺术之VelocityTracker

Android开发艺术之VelocityTracker

作者: Android_小马范儿 | 来源:发表于2017-05-11 11:02 被阅读0次

    VelocityTracker是速度追踪,主要在onTouchEvent(MotionEvent event)的MotionEvent.ACTION_UP获取滑动速率并使用
    1.获取当前点击事件的速度

    VelocityTracker velocitytracker=VelocityTracker.obtain();
    velocitytracker.addMovement(event);
    

    2.获取当前的滑动速度

    velocityTracker.computeCurrentVelocity(1000);
    float xVelocity = velocityTracker.getXVelocity();
    float yVelocity = velocityTracker.getYVelocity();
    

    3.滑动速率说明

    速度=(终点位置-起点位置)/时间段
    如果速度>0,代表从左往右划动(如果子item更换则是childIndex-1),
    如果速度<0,代表从右往左滑动(如果子item更换则是childIndex+1)
    从Android开发艺术探索上获知,如果Math.abs(xVelocity)>50,则会更换item,
    可是从ViewPager源码查看,不是这个公式,这个自己的项目自己去验证确
    

    4.当不需要的时候,进行回收

    velocityTracker.clear();  //直接清除
    velocityTracker.recycle(); //滑动速率事件交给其他去获取
    

    相关文章

      网友评论

          本文标题:Android开发艺术之VelocityTracker

          本文链接:https://www.haomeiwen.com/subject/txfotxtx.html