问候语

我使用canvas拍摄了Surface View。我正在移动表面以显示运动
宾语。但是我的问题是,如果我按画布,那么某些对象将一直移动到用户不释放画布的压力。我已经尝试了action_down接触事件。
只有一次。所以我不得不一次又一次地触摸来移动物体

最佳答案

关于触摸事件有两件事。如果您想使用它们并将它们保留在视图中,则总是返回true。两个使用action_move

 public boolean onTouch(View v, MotionEvent event){
    if(event.getAction() == MotionEvent.ACTION_DOWN){
        saveEvent = event;
    }else if(event.getAction() == MotionEvent.ACTION_MOVE){
        //diff savedEvent and event
        //on 2.0 above its getX(0)
        diffX = event.getX() - savedEvent.getX();
        diffY = event.getY() - savedEvent.getY();
        moveObject(diffX,diffY);
        savedEvent = event;
    }else if(event.getAction() == MotionEvent.ACTION_UP){
        savedEvent = null;
    }
    return true;
 }

10-06 10:03