觸控螢幕(2) VelocityTracker

2021-06-27 01:40:01 字數 1519 閱讀 3289

利用motionevent,我們可以獲知手指在螢幕滑過的速度,因為可以或者位置,間隔時間。android提供了velocitytracker類,必須自己計算,可以直接獲取。velocity實際也是從motionevent中獲取資訊。

下面是乙個例子,小例子很簡單,乙個linearlayout,上面有乙個textview,用於顯示速度資訊。

例子**如下:

public class testvelocityactivity extends activity

private velocitytracker vt = null;      

@override

public boolean ontouchevent(motionevent event) else 

//加入motionevent資訊,這是獲取的第乙個event資訊,速度為0。

vt.addmovement(event);

break; 

case motionevent.action_move:

//加入motionevent的資訊,獲得第二個event資訊,就可以有效計算速度

vt.addmovement(event);

//設定計算速度的單位 pixel/unit,unit為1,單位為pixels/ms,我們設定為1000,速度單位為pixels/s

vt.computecurrentvelocity(1000);//1秒1 pixel 

//獲取x方向和y方向的速度,在呼叫getx|yvelocity()之前必須先執行computecurrentvelocity()。

textview.settext( "x速率為" + vt.getxvelocity()+ ",y速度為" + vt.getyvelocity());

break; 

case motionevent.action_up:

case motionevent.action_cancel:

/* **,其他人可以用,我們將用在下乙個動作。此外,我們不在action_up的時候計算,因為此時速度為0。

* 如果我們在遊戲中計算拋投物體的速度,通常是action_move的最後速度,不要在action_up中計算。 

* velocitytracker是比較費資源的,因此當我們不需要的使用就應該recycle(),執行其他人使用,雖然 

* android允許多個velocitytracker,但這會消耗大量記憶體,因此不同應recycle(),並重複使用 */  

vt.recycle();

break; 

default: 

break; 

} return super.ontouchevent(event); } }

觸控螢幕開發 觸控螢幕甩屏互動系統

這是南京酷牛科技最新開發的一款上下屏聯動觸控螢幕軟體。比較獨特的是,玩家可以通過控制乙個下屏,與上屏五個顯示屏進行展示的互動。軟體組成 軟體特點 1 一台大的顯示器 支援led屏,投影儀,拼接屏 可以和多個觸控螢幕組成區域網實現觸屏資料飛至大屏,不限制觸控螢幕的個數。如果只有1個觸控螢幕也可以用擴充...

觸控螢幕設定

1.srcpnd,intpnd 暫存器的意義 一直不明白為什麼中斷服務程式最後要把 srcpnd,intpnd 相應位置 1,還把這個過程稱為 cleaningpend 既然叫清除為什麼不是清零呢?查了手冊 當有中斷源請求中斷服務時,srcpnd 相應位置 1,裁決 判斷是否響應中斷 時 intpn...

觸控螢幕驅動

輸入子系統體系 核心層 linux dir drivers input input.c 提供最核心函式 裝置事件層 linux dir drivers input evdev.c 提供handler 提供輸入裝置產生的原始資料並上報給應用程式,這適用於 所有輸入裝置,該觸控螢幕也不例外 編寫基於輸入...