欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Android Scroller的使用方法

程序员文章站 2022-03-20 15:44:28
本文实例为大家分享了android scroller的使用方法,供大家参考,具体内容如下1、scrollto和scrollbyview类定义了两个用于滚动view内容的方法:scrollto和scro...

本文实例为大家分享了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

运行结果:

Android Scroller的使用方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关标签: Android Scroller