任何人都可以帮助我如何在谷歌地图 v2 中旋转箭头吗?您已经看到,在导航中,箭头正在向我们所面对的方向旋转。我想在我的应用程序中实现它。我markerOption.rotation(rotation)
对这似乎是一个静态的。我想在旋转手机时动态旋转箭头。
问问题
1774 次
1 回答
5
我能够做到这一点。它是如此容易。下面是如何。这是为了读取传感器并获取手机的方向。
/**
* Initialize the sensor manager.
*/
private void setupSensorManager() {
mSensorManager = (SensorManager) mContext
.getSystemService(Context.SENSOR_SERVICE);
mSensorManager.registerListener(mSensorListener,
mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION),
SensorManager.SENSOR_DELAY_NORMAL);
Log.d(TAG, "SensorManager setup");
}
/**
* The sensor event listener.
*/
SensorEventListener mSensorListener = new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
mOrientation = event.values[0];
Log.d(TAG, "Phone Moved "+mOrientation);
draw(mOrientation);
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
};
这就是我真正轮换的地方。我的标记已添加到地图中。我正在从另一个班级访问它。
public void draw(float angle) {
// Take the relevant Marker from the marker list where available in map
AndroidMapGoogleOverlayItem myself = (AndroidMapGoogleOverlayItem) getOverlayItem(0);
if (myself == null) {
return;
}
myself.getMarker().setRotation(mOrientation); // set the orientation value returned from the senserManager
}
于 2013-11-07T02:52:30.207 回答