我是初学者,我尝试制作一个小型游戏,当按住按钮时,向上/向下/向左/向右移动角色。所以我使用两个事件,第一个是onClick(),第二个是onTouch()。 onClick()事件似乎工作正常,但onTouch()事件出现问题。当我按住按钮时只移动一次然后它就像onClick()事件一样停止移动。如何让角色移动直到用户释放按钮?
这是我的代码:
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
v.setPressed(true);
character.setX(character.getX() + 10);
break;
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_OUTSIDE:
v.setPressed(false);
pressed = false;
// Stop action ...
break;
case MotionEvent.ACTION_POINTER_DOWN:
break;
case MotionEvent.ACTION_POINTER_UP:
break;
case MotionEvent.ACTION_MOVE:
break;
}
return true;
}