我在多次觸摸鍛鍊,我有這個問題: 如何計算屏幕上的手指? 這是我的代碼:如何計算屏幕上的手指?
public boolean onTouch(View v, MotionEvent event) {
int dita = 0;
switch(event.getActionMasked()){
case MotionEvent.ACTION_DOWN:
Log.d("Touch", "down");
dita = event.getPointerCount();
ditaText.setText("Dita sullo schermo: " + String.valueOf(dita));
break;
case MotionEvent.ACTION_POINTER_DOWN:
Log.d("Touch", "Point down");
dita = event.getPointerCount();
ditaText.setText("Dita sullo schermo: " + String.valueOf(dita));
break;
case MotionEvent.ACTION_UP:
Log.d("Touch", " up");
dita = 0;
ditaText.setText("Dita sullo schermo: " + String.valueOf(dita));
break;
case MotionEvent.ACTION_POINTER_UP:
Log.d("Touch", "Point up");
dita = event.getPointerCount();
ditaText.setText("Dita sullo schermo: " + String.valueOf(dita));
break;
}
return true;
}
當手指觸摸屏幕的變量包含在屏幕上手指的數量,但是當我舉起手指出現了問題。相反,當我舉起兩個手指時,變量減少一個。 怎麼可能? 你能幫我嗎? 感謝
應該按預期工作。你可以嘗試用不同的手機測試相同的代碼。有些手機有這個問題。 – tasomaniac
如果我添加一個私人變量增加和減少了getPointerCount? –