我一直在玩運動事件和拖動(所以我不會把手指從屏幕上移開 - 這不是一扔)。問題在於它只能檢測到第二,第三,第四等,當我的手指移過上下拖動開始和結束點時,拖動向下或向上移動。機器人檢測到阻力
查看下面的代碼。當我向上拖動時計數等於2,向下拖動時計數爲1。然而,只有當我將手指向上移動(計數2),然後再回落到開始向上移動的位置(計數爲1)時,纔會計數,而不是在等於2之前。我繼續向前移動,只有當我移動過去時,我改變了方向才能回落。但是爲什麼它在這些點之前不認爲它是一個阻力,因爲在這些方向上的任何移動都應該是一個阻力。我該如何解決這個問題?
這裏是我的簡單的代碼來測試它:
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
oldX = (int) event.getRawX();
oldY = (int) event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
posY = (int) event.getRawY();
posX = (int) event.getRawX();
diffPosY = posY - oldY;
diffPosX = posX - oldX;
if (diffPosY > 0){//down
count = 1;
}
else//up
{
count = 2;
}
break;