转自:http://blog.sina.com.cn/s/blog_6c2210fd010109pf.html
用来追踪触摸事件(flinging事件和其他手势事件)的速率。用obtain()函数来获得类的实例,用addMovement(MotionEvent)函数将motionevent加入到VelocityTracker类实例中,当你使用到速率时,使用computeCurrentVelocity(int)初始化速率的单位,并获得当前的事件的速率,然后使用getXVelocity()或getXVelocity()获得横向和竖向的速率。
计算那些已经发生触摸事件点的当前速率。这个函数只有在你需要得到速率消息的情况下才调用,因为使用它需要消耗很大的性能。通过getXVelocity()和getYVelocity()获得横向和竖向的速率。
Parameters:
units The units you would like the velocity in. A value of 1provides pixels per millisecond, 1000 provides pixels per second,etc.
maxVelocity The maximum velocity that can be computed by thismethod. This value must be declared in the same unit as the unitsparameter. This value must be positive.
参数:
具体使用方法:
大体的使用是:
用来跟踪触摸速度的类
当你需要跟踪的时候使用obtain()方法来来获得VelocityTracker类的一个实例对象
使用addMovement(MotionEvent)函数将当前的移动事件传递给VelocityTracker对象
使用 computeCurrentVelocity
使用 getXVelocity
转自:http://blog.csdn.net/hudashi/article/details/7352157
android.view.VelocityTracker主要用跟踪触摸屏事件(flinging事件和其他gestures手势事件)的速率。用addMovement(MotionEvent)函数将Motion event加入到VelocityTracker类实例中.你可以使用getXVelocity() 或getXVelocity()获得横向和竖向的速率到速率时,但是使用它们之前请先调用computeCurrentVelocity(int)来初始化速率的单位 。
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
void |
addMovement(
MotionEvent event)
Add a user's movement to the tracker.
| ||||||||||
void |
clear()
Reset the velocity tracker back to its initial state.
| ||||||||||
void |
computeCurrentVelocity(int units, float maxVelocity)
Compute the current velocity based on the points that have been collected.
int
unitis表示速率的基本时间单位。unitis值为
1的表示是,一毫秒时间单位内运动了多少个像素, unitis值为
1000表示一秒(1000毫秒)时间单位内运动了多少个像素
float
Velocity表示速率的最大值
| ||||||||||
void |
computeCurrentVelocity(int units)
Equivalent to invoking
computeCurrentVelocity(int, float) with a maximum velocity of Float.MAX_VALUE.
| ||||||||||
abstract T | getNextPoolable() | ||||||||||
float |
getXVelocity()
Retrieve the last computed X velocity.
| ||||||||||
float |
getXVelocity(int id)
Retrieve the last computed X velocity.
| ||||||||||
float |
getYVelocity(int id)
Retrieve the last computed Y velocity.
| ||||||||||
float |
getYVelocity()
Retrieve the last computed Y velocity.
| ||||||||||
abstract boolean | isPooled() | ||||||||||
static VelocityTracker |
obtain()
Retrieve a new VelocityTracker object to watch the velocity of a motion.
| ||||||||||
void |
recycle()
Return a VelocityTracker object back to be re-used by others.
| ||||||||||
abstract void | setNextPoolable(T element) | ||||||||||
abstract void | setPooled(boolean isPooled) |