Android Scroller的使用方法
本文实例为大家分享了android scroller的使用方法,供大家参考,具体内容如下
1、scrollto和scrollby
view类定义了两个用于滚动view内容的方法:scrollto和scrollby:
可以看到scrollby传入的x和y参数实际上是x方向和y方向的滚动距离的增量,最终还是调用了scrollto方法。而scrollto方法中做了一些刷新和通知操作,最重要的是对mscrollx和mscrolly进行了赋值。
在view的draw方法中,我们可以看到如下代码:
也就是说,mscrollx和mscrolly最终是用在了内容绘制的地方,其mleft和mtop本身都没有因为scrollto发生变化。scrollto作用在view的内容上,而不是view本身。
2、 computescroll
在上面的view的draw方法的节选中我们看到在对mscrollx和mscrolly取值之前,调用了computescroll方法。computescroll方法声明如下:
根据注释,computescroll的典型用法是与scroller结合使用实现内容/字节点的滚动动画。
3、scroller的使用
scroller事实上并不直接操作view的滚动,而是根据设置来计算当前x和y方向的距离。scroller的一般使用步骤:
1、初始化scroller,可以指定插值器,不指定则使用默认的viscousfluidinterpolator
2、调用scroller#startscroll方法,开始在一段时间内不断计算x和y方向的滚动
3、通知view刷新
4、在view#computescroll中通过scrollto实现真正的滚动操作
5、通知view刷新
其中在滚动执行完成之前4和5会不断地循环,直至scroller.computescrolloffset()返回false。
xml布局:
activity
运行结果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读