如何访问从表面视图类扩展的类中的加速度计值?

时间:2012-01-09 07:02:04

标签: android accelerometer surfaceview

我是android新手,我目前正在实现一个从表面视图类扩展并实现表面持有者的类。

我只想从加速度计获取x轴,y轴等点,并将其传递给绘制方法,然后在接收到的位置上显示图像。

那么,我怎样才能得到这些积分?我根据这个答案实现了加速度计。

Moving an image using Accelerometer of android

现在我想从加速计类中获得积分。我怎么能这样做?

提前致谢

1 个答案:

答案 0 :(得分:1)

加速度计不返回坐标,它返回相对于手机X-Y轴的重力读数。在你的问题的答案中,程序员正在通过平方值将重力读数转换为坐标(这可能有效,但不完全正确)。

你应该做的是使用一些物理规则:

accelaration=(velocity2-velocity1)/time
velocity=(distance2-distance1)/time

使用此功能,您应该有一个表示增量时间和变量的变量。每帧与前一帧之间的delta速度,并使用它们来计算位置的变化。如果这对您来说太难了,请尝试您发布的答案中的答案(虽然我不相信,但似乎用户接受了答案)。