VelocityTracker計算觸控移動速度

2021-09-02 10:08:44 字數 1428 閱讀 8833

作用:幫助去跟蹤螢幕上的flinging事件,個人認為可能就是手指的觸控移動事件

使用方法:1 呼叫 velocitytracker  

mvelocitytracker = 

velocitytracker.obtain();   例項化物件 

2  呼叫

mvelocitytracker.addmovement(event);   ,為物件新增監聽的事件 

3 呼叫 mvelocitytracker.computecurrentvelocity(1, (float)0.01);  計算速度 

4 mvelocitytracker.getxvelocity( );   和mvelocitytracker.getyvelocity( );  計算x和y的速度(可以傳遞引數來指定移動物件)

5 使用結束呼叫 mvelocitytracker.clear();   和mvelocitytracker.recycle();  來清理物件

測試**: 

public class velocitytrackertestactivity extends activity 

@override

public boolean ontouchevent(motionevent event)

return super.ontouchevent(event); }

private void acquirevelocitytracker(final motionevent event)

mvelocitytracker.addmovement(event);

} /**

* 釋放velocitytracker

* * @see android.view.velocitytracker#clear()

* @see android.view.velocitytracker#recycle()

*/

private void releasevelocitytracker()

} private static final string sformatstr = "velocityx=%f\nvelocityy=%f";

/**

* 記錄當前速度

* * @param velocityx x軸速度

* @param velocityy y軸速度

*/

private void recodeinfo(final float velocityx, final float velocityy)

}

2   xml

<?xml version = "1.0" encoding = "utf-8"?>

觸控螢幕(2) VelocityTracker

利用motionevent,我們可以獲知手指在螢幕滑過的速度,因為可以或者位置,間隔時間。android提供了velocitytracker類,必須自己計算,可以直接獲取。velocity實際也是從motionevent中獲取資訊。下面是乙個例子,小例子很簡單,乙個linearlayout,上面有乙...

view觸控移動

觸控ing 手指在view上面挪來挪去 void touchesmoved nsset touches withevent uievent event uitouch touch touches anyobject 當前觸控點 cgpoint current touch locationinview...

移動觸控事件之二

現在智慧型手機火爆了,我們都是觸控螢幕事的,那麼我們以前js寫法是無法滿足一些要求了,下面我來給大家介紹幾個js手機觸控螢幕的事件用法 處理touch事件能讓你跟蹤使用者的每一根手指的位置。你可以繫結以下四種touch事件 一 touchstart 手指放到螢幕上的時候觸發 touchmove 手指...