本文译自:http://developer.android.com/reference/android/widget/Scroller.html
继承关系
java.lang.Object
|____android.widget.Scroller
类概要
这个类封装了滚动处理。在它的构造器中可以传递滚动的持续时间,并指定滚动动画所需要的最大时间。经过这段时间,滚动处理会自动的把它们移到最后的阶段,并且如果computeScrollOffset()方法始终返回false,那么就表示滚动处理结束了。
Public Constructors | |
| Scroller(Context context) 用默认的期间和查补器来创建一个滚动器(Scroller) |
| Scroller(Context context, Interpolator interpolator) 用指定的插补器来创建一个滚动器(Scroller)。如果查补器参数是null,那么就会使用默认的插补器(黏性插补器)。针对Honeycomb或更新版本的应用程序“Flywheel”行为会有效。 |
| Scroller(Context context, Interpolator interpolator, boolean flywheel) 用指定的插补器来创建一个滚动器(Scroller)。如果查补器参数是null,那么就会使用默认的插补器(黏性插补器)。并指定是否支持渐进的“flywheel”行为。 |
Public Methods | |
void | abortAnimation() 停止动画,跟forceFinished(boolean)相反,终止动画会导致滚动器移动到最后的X和Y的位置。 |
boolean | computeScrollOffset() 当你想了解最新的滚动位置时,调用这个方法。如果该方法返回true,那么动画依然在进行中。位置会被新的位置更改。 |
void | extendDuration(int extend) 延长滚动动画。调用这个方法会让动画滚动比setFinalX(int)或setFinalY(int)方法的设置更远更长。 参数:extend,以毫秒为单位,额外的滚动时间。 |
void | filing(int startX, int startY, int velocity, int velocity, int minx, int maxX, int minY, int maxyY) 基于甩动手势开始滚动处理。根据甩动的初始速率来决定滚动的距离。 参数: startX 滚动的起始点(X) startY 滚动的起始点(Y) velocityX 以像素/每秒为单位,测量所得X轴的初始甩动速率 velocityY以像素/每秒为单位,测量所得Y轴的初始甩动速率 minX 最小的X轴值,滚动器不能滚动经过这个点 maxX 最大的X轴值,滚动器不能滚动经过这个点 minY 最小的Y轴值,滚动器不能滚动经过这个点 maxY 最大的Y轴值,滚动器不能滚动经过这个点 |
final void | forceFinished(boolean finished) 给finished字段强制指定一个特殊的值。 参数:finished,指定一个新的finished值。 |
float | getCurrVelocity() 返回当前的速率 返回值:初始速率减去减少的速度,结果可以是负值。 |
final int | getCurrX() 返回当前滚动中的X轴偏移量 返回值:新的X轴偏移量是相对原点的绝对距离。 |
final int | getCurrY() 返回当前滚动中的Y轴偏移量 返回值:新的Y轴偏移量是相对原点的绝对距离。 |
final int | getDuration() 以毫秒为单位,返回滚动时间所需要的时长。 返回值:滚动所持续的时间。 |
final int | getFinalX() 返回X轴滚动结束的位置,只对“fling”类型的滚动有效。 返回值:相对于原点的X轴最终绝对偏移距离。 |
final int | getFinalY() 返回Y轴滚动结束的位置,只对“fling”类型的滚动有效。 返回值:相对于原点的Y轴最终绝对偏移距离。 |
final int | getStartX() 返回X轴的滚动起始点 返回值:起始点偏移量,相对于原点的X轴绝对距离 |
final int | getStartY() 返回Y轴的滚动起始点 返回值:起始点偏移量,相对于原点的Y轴绝对距离 |
final boolean | isFinised() 返回滚动器的滚动处理是否完成 返回值:滚动处理完成,返回true,否则返回false |
void | setFinalX(int newX) 设置滚动器的滚动的X轴终点 参数:newX 相对原点的X轴绝对距离 |
void | setFinalY(int newY) 设置滚动器的滚动的Y轴终点 参数:newY 相对原点Y轴绝对距离 |
final void | setFriction(float friction) 设置应用于“fling”手势的摩擦力。调用getScrollFriction()方法获得默认值。 参数:friction 代表摩擦力系数的标量刻度值 |
void | startScroll(int startX, int startY, int dx, int dy) 通过提供起始点和行程距离来启动滚动处理。滚动持续的时间会使用默认值250毫秒。 参数: startX 以像素为单位,设定水平滚动偏移量,正值会向左滚动内容 startY 以像素为单位,设定垂直滚动偏移量,正值会向上滚动内容 dx 水平行程。正值会向左滚动内容 dy 垂直行程,正值会向上滚动内容 |
void | startScroll(int startX, int startY, int dx, int dy, int duration) 通过提供起始点和行程来启动滚动处理 参数: startX 以像素为单位,设定水平滚动偏移量,正值会向左滚动内容 startY 以像素为单位,设定垂直滚动偏移量,正值会向上滚动内容 dx 水平行程。正值会向左滚动内容 dy 垂直行程,正值会向上滚动内容 duration 以毫秒为单位,设定滚动的时长。 |
int | timePassed() 返回滚动处理开始后所消逝的时间。 返回值:以毫秒为单位,滚动消逝的时间。 |