旋转手机时如何在googlemap v2中旋转箭头

use*_*655 3 android image-rotation marker google-maps-android-api-2

任何人都可以帮我解决如何在谷歌地图v2中旋转箭头?你已经看到,在导航中箭头朝着我们面向的方向旋转.我想将它实现到我的应用程序.我markerOption.rotation(rotation)对此感到愤怒似乎是一个静态的.我想在旋转手机时动态旋转箭头.

use*_*655 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) {
    }
};
Run Code Online (Sandbox Code Playgroud)

这就是我真正旋转的地方.我的标记已添加到地图中.我从另一个班级访问它.

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
 }
Run Code Online (Sandbox Code Playgroud)