我刚写了几行代码,我试图在我的加速度计倾斜的方向上移动一个圆圈。
当我向右倾斜时,圆圈向右移动。 当我向下倾斜时,圆圈向下移动。
但现在,当我希望它上升时,相反,当我希望它向左移动时,它会向右移动。
光标有两个坐标x和y。 当它得到更新时,它会计算
x += mx;
y += my;
mx和my来自onSensorChanged方法。
public void onSensorChanged(SensorEvent e) {
if(e.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
gameView.setCursorX((int)Math.pow(e.values[1], 2));
gameView.setCursorY((int)Math.pow(e.values[0], 2));
}
}
现在我的问题是:我怎么能得到负面运动?看来我的onSensorChanged方法只收集正面方向? 有什么想法吗?
提前致谢!
答案 0 :(得分:1)
好的,对不起这个愚蠢的问题......在关注我注意到的问题之后,我对结果进行了平方,这意味着只有积极的结果......
public void onSensorChanged(SensorEvent e) {
if(e.sensor.getType() == Sensor.TYPE_ACCELEROMETER) {
gameView.setCursorX((int)e.values[1]);
gameView.setCursorY((int)e.values[0]);
}
}
现在这是我的工作代码...抱歉给您带来不便!