Android ACTION_MOVE不起作用

时间:2014-05-27 10:12:32

标签: android

这可能是一个愚蠢的问题,但我不知道为什么ACTION_MOVE没有被调用。我需要使用触摸的x坐标更新变量,但是当我按下并保持时,然后移动变量不会改变。

@Override
public boolean onTouch(View v, MotionEvent event) {
    int ptrId = 0;
    int action = event.getAction();

    switch (event.getAction() & event.ACTION_MASK) {
    case MotionEvent.ACTION_DOWN:
        screenTouches += 1;
        ourSurfaceView.screenTouched(event.getX(), event.getY());
        ourSurfaceView.screenTouched2(event.getX(), event.getY());
        break;
    case MotionEvent.ACTION_UP:
        screenTouches -= 1;
        ourSurfaceView.screenReleased(event.getX(), event.getY());
        ourSurfaceView.screenReleased2(event.getX(), event.getY());
        break;
    case MotionEvent.ACTION_POINTER_DOWN:
        ptrId = action >> MotionEvent.ACTION_POINTER_ID_SHIFT;
        screenTouches += 1;
        int ptrIdx = event.findPointerIndex(ptrId);
        ourSurfaceView.screenTouched(event.getX(ptrId), event.getY(ptrId));
        ourSurfaceView.screenTouched2(event.getX(ptrId), event.getY(ptrId));
        break;
    case MotionEvent.ACTION_POINTER_UP:
        ptrId = action >> MotionEvent.ACTION_POINTER_ID_SHIFT;
        screenTouches -= 1;
        ourSurfaceView.screenReleased(event.getX(ptrId), event.getY(ptrId));
        ourSurfaceView
                .screenReleased2(event.getX(ptrId), event.getY(ptrId));
        break;
    case MotionEvent.ACTION_MOVE:
        ourSurfaceView.screenMove(event.getX(ptrId), event.getY(ptrId));
        break;
    }

    return true;
}

编辑:

返回false;工作,我的代码在其他地方有一个错误,这就是为什么我认为它没有用。

0 个答案:

没有答案