【发布时间】:2023-03-22 03:33:01
【问题描述】:
在让计算器应用程序工作后,我决定尝试创建 pong。中间有一个盒子,两端有两个桨。手机是水平的。我让盒子从墙上弹起,桨随着我向下移动手指而移动。我的问题是我想让它成为两个玩家,并且我想为游戏提供多个手指输入。我想让一根手指移动桨 1,另一根手指移动桨 2。到目前为止,这是我的输入代码
@Override
public boolean onTouchEvent(MotionEvent ev) {
final int action = ev.getAction();
switch (action) {
case MotionEvent.ACTION_MOVE: {
// Find the index of the active pointer and fetch its position
float p1y = ev.getY();
if(ev.getX()<300)
{
player1y = p1y;
}
if(ev.getX()>300)
{
player2y = p1y;
}
//player1y = p1y;
invalidate();
break;
}
}
return true;
}
它位于我的surfaceview 类中。如何修改输入法或完全摆脱它并更改它以实现我的目标?也对我的变量感到抱歉。 Eclipse 在我身上经常崩溃,我的笔记本电脑触摸面板倾向于移动我的光标,因此较短的变量似乎可行。 p1y 是触摸的 y。而player1y和player2y分别是player1和player2桨的y位置。
【问题讨论】:
-
下面的答案有用吗?我一直在看它,我看不出这如何让你有两个手指同时在两个不同的方向上移动两个桨。任何反馈都将不胜感激,因为我目前正在尝试找出类似的问题,谢谢
-
下面的答案确实有效,完美解决了问题。