我正在尝试在我的简单 2d 游戏上实现触摸事件。我正在尝试做一些类似于我在油漆中制作的快速图表的事情。
例如,如果用户按下屏幕的“TOP”部分,则对象向上移动。如果他们向右按,则对象向右移动等。
但是,我似乎无法弄清楚选择屏幕底部和右侧部分所需的数学运算。
ScreenX 和 ScreenY 变量为屏幕尺寸,供参考。
有人可以检查我的代码,看看我做错了什么吗?
Java 代码
@Override
public boolean onTouchEvent(MotionEvent event) {
float x = event.getX();
float y = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
if (event.getY() < screenY / 5)
tank.changeDirection('UP');
else if (event.getY() > screenY / 5)
tank.changeDirection('DOWN');
else if (event.getX() < screenX / 2)
tank.changeDirection('LEFT');
else if (event.getX() > screenX / 2)
tank.changeDirection('RIGHT');
break;
case MotionEvent.ACTION_UP:
tank.changeDirection(0);
break;
}
return true;
}
