幫助器用於跟蹤觸摸事件的速度,用於實現投擲和其他此類手勢。用於obtain()
在開始跟蹤時檢索類的新實例。將收到的動作事件放入其中 addMovement(MotionEvent)
。當你想確定速度調用 computeCurrentVelocity(int)
然後調用getXVelocity(int)
並getYVelocity(int)
檢索每個指針id的速度。
公共方法
void |
addMovement(MotionEvent event) 爲 VelocityTracker 傳入觸摸事件(包括 |
void |
clear() 重置 VelocityTracker 回其初始狀態。 |
void |
computeCurrentVelocity(int units) 根據已經傳入的觸摸事件計算出當前的速度,可以通過 注:一般在 case MotionEvent.ACTION_MOVE: mVelocity.computeCurrentVelocity(VELOCITY_DURATION); 參數 單位您希望速度輸入的單位。值爲1表示每毫秒像素數,1000表示每秒像素數等。maxVelocity可以通過此方法計算的最大速度。必須在與units參數相同的單位中聲明此值。該值必須爲正數。 |
float |
獲取最後計算的水平方向速度,使用此方法前需要記得先調用 |
float |
getXVelocity(int id) 獲取對應的手指id最後計算的水平方向速度,使用此方法前需要記得先調用 |
float |
getYVelocity(int id) 獲取對應的手指id最後計算的垂直方向速度,使用此方法前需要記得先調用 |
float |
獲取最後計算的垂直方向速度,使用此方法前需要記得先調用 |
static VelocityTracker |
obtain() 獲取一個 VelocityTracker 對象。VelocityTracker的構造函數是私有的,也就是不能通過new來創立 |
void |
recycle() 回收 VelocityTracker 實例。 |