[英]Multi Touch [Android]
我的代碼經過嚴格簡化,如下所示:
if(action == MotionEvent.ACTION_DOWN){
x = me.getX();
y = me.getY();
}
else if(action == MotionEvent.ACTION_UP){
x = me.getX();
y = me.getY();
}
else if(action == MotionEvent.ACTION_MOVE){
x = me.getX();
y = me.getY();
}
if(action == MotionEvent.ACTION_POINTER_2_DOWN){
x2 = me.getX(1);
y2 = me.getY(1);
}
if(action == MotionEvent.ACTION_POINTER_2_UP){
x2 = me.getX(1);
y2 = me.getY(1);
}
我要添加
if(action == MotionEvent.ACTION_POINTER_2_MOVE){
x2 = me.getX(1);
y2 = me.getY(1);
}
但是當然
MotionEvent.ACTION_POINTER_2_MOVE
不是真正的方法。 我知道必須有一種解決方法。 有什么建議么?
如果您不明白我的問題,那么我要問的是,移動指針時是否有運行多點觸摸的方法? BTW谷歌沒有幫助。
我還檢查了http://developer.android.com/reference/android/view/MotionEvent.html,但同樣沒有用
從文檔中:
未定義單個指針在運動事件中出現的順序。 因此,指針的指針索引可以從一個事件變為下一個事件,但是只要指針保持活動狀態,就可以保證指針的指針ID保持不變。 使用getPointerId(int)方法獲取指針的指針ID,以跨手勢中的所有后續運動事件對其進行跟蹤。 然后,對於連續的運動事件,使用findPointerIndex(int)方法獲取該運動事件中給定指針ID的指針索引。
您必須自己獲取並跟蹤指針ID,並確定移動了哪些指針。
http://developer.android.com/reference/android/view/MotionEvent.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.