Android学习整理 - 15- Scroller

Android Scroller完全解析,关于Scroller你所需知道的一切


Scroller

构造函数
  • Scroller(Context context)
  • Scroller(Context context, Interpolator interpolator)动画插入器
  • Scroller(Context context, Interpolator interpolator, boolean flywheel),overScroller的flinging(具体使用未知)

常用的方法
computeScrollOffset()

判断Scroller的数值是否还在变化中,true为变化中,false为变化完成。

startScroll (int startX, int startY, int dx, int dy)

开始数值变化,前俩个参数为起始的X、Y值,后面俩个是对应的偏移量(偏移量:左上为正,右下为负。默认偏移时间为250毫秒,可以自己加个时间参数。)

Scroller.getCurrX()

得到当前变化的X

Scroller.getCurrY()

得到当前变化的Y


使用

  1. 在自定义view的构造方法中初始化Scroller
  2. 调用Scroller的
startScroll (int startX, int startY, int dx,int dy)

开始滚动

并且记得刷新绘制

 invalidate();
  1. 重写函数
computeScroll()
```

这里很重要!很重要!很重要!!!

一般情况下
```
@Override
    public void computeScroll() {
        if(mScroller.computeScrollOffset()){
            scrollTo(mScroller.getCurrX(), mScroller.getCurrY());
            invalidate();
        }
    }
```


----

**[ScrollerDemo](https://github.com/minminaya/ScrollerDemo)**

---
end
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容