在哪里可以找到使用加速度计(Andengine)移动球的简单示例。我使用 onKeyDown 事件来做到这一点。
诠释 x=20;y=10;
//ballSprite.setPostion(x,y); 例如:当按下左键时
x=x-5;
按下向上键时
y=y+5;
同样的事情,如何使用加速度计..任何样品?
特定于 AndEngine... 下载AndEngineExamples并查看 PhysicsExample 的源代码。它使用加速度计来调整物理世界的重力。
本质上,您所做的只是覆盖 onAccelerometerChanged 以使用 AccelerometerData 移动球。
您可能会发现以下内容很有用;
public class AccelerometerScreen extends BaseGameActivity implements IAccelerometerListener, IOnAreaTouchListener{
private static final int CAMERA_WIDTH = 480;
private static final int CAMERA_HEIGHT = 720;
@Override
public void onLoadResources() {
this.enableAccelerometerSensor(this);
this.mEngine.getTextureManager().loadTextures(mTexture);
}
@Override
public Scene onLoadScene() {
mEngine.registerUpdateHandler(new FPSLogger());
}
@Override
public void onAccelerometerChanged(AccelerometerData pAccelerometerData) {
accellerometerSpeedX = (int)pAccelerometerData.getX();
// accellerometerSpeedY = (int)pAccelerometerData.getY();
Log.v("Accelerometer X Y Z: ", ""+pAccelerometerData);
// from this accelerometer data u can set ur sprite.
}
}