Android类说明---Scroller

本文译自: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()

  返回滚动处理开始后所消逝的时间。

  返回值:以毫秒为单位,滚动消逝的时间。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值