這是不是特別的遊戲編程的東西,這就是爲什麼我在這裏問。基本上,我有這樣的代碼:多點觸控遊戲控制android
for (int i = 0; i < event.getPointerCount(); i++) {
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_POINTER_DOWN:
if(event.getPointerId(i) == 0)
{
Log.d("Game", "Primary Down");
}
else if(event.getPointerId(i) == 1)
{
Log.d("Game", "Secondary Down");
}
break;
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_POINTER_UP:
if(event.getPointerId(i) == 0)
{
Log.d("Game", "Primary Up");
}
else if(event.getPointerId(i) == 1)
{
Log.d("Game", "Secondary Up");
}
break;
}
}
哪個別人給我說,這將解決我原來的問題,這就是如果我放下主指針會被罰款,以及同爲二級指針,但無論被釋放的第一根手指被認爲是輔助指針,但它帶來了另一個問題,我似乎無法找到出於某種原因。早在這裏,這樣的貢獻,但仍然。
我用這段代碼碰到的問題是,如果主指針和輔助指針都關閉,並且其中任何一個都被釋放,它會激活這兩種情況,所以輸出「主向上」和「輔助向上」釋放的第二個將會識別出它是哪一個,如果這兩個例子在我到達那裏之前就關閉了,那麼在那一點上就不重要了。任何想法如何解決這樣的事情?或者另一種方式來做一個遊戲的多點觸控,或者其他任何事情。謝謝!
WWaldo
所以你說我應該取出for循環,只是有if語句檢查你的答案中的pointerId變量? – WWaldo
我猜是的,因爲它現在完美的工作,非常感謝! – WWaldo