diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java index 78ab8ebeed..13f075f63f 100644 --- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java +++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java @@ -872,4 +872,11 @@ public class AMapNaviViewWrapper implements IMogoMapView, } return null; } + + @Override + public void changeBearing( float bearing ) { + if ( checkAMapView() ) { + mMapView.getMap().moveCamera( CameraUpdateFactory.changeBearing( bearing ) ); + } + } } diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/uicontroller/AMapUIController.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/uicontroller/AMapUIController.java index b3e56bb358..175a4e2529 100644 --- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/uicontroller/AMapUIController.java +++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/uicontroller/AMapUIController.java @@ -269,4 +269,11 @@ public class AMapUIController implements IMogoMapUIController { } return null; } + + @Override + public void changeBearing( float bearing ) { + if ( mClient != null ) { + mClient.changeBearing( bearing ); + } + } } diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.java index f74206da88..73c3f244b1 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.java +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/uicontroller/IMogoMapUIController.java @@ -199,7 +199,8 @@ public interface IMogoMapUIController { /** * 配置自车图标样式 * - * @param option 为空时使用默认配置 + * @param option 为空时使用 + * 默认配置 */ void setCarCursorOption( @Nullable CarCursorOption option ); @@ -209,4 +210,10 @@ public interface IMogoMapUIController { * @return */ MapCameraPosition getMapCameraPosition(); + + /** + * 切换地图视图视角 + * @param bearing + */ + void changeBearing(float bearing); } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java b/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java index da0b3ad0b1..89cdb35eb8 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java @@ -262,4 +262,11 @@ public class MogoMapUIController implements IMogoMapUIController { } return null; } + + @Override + public void changeBearing( float bearing ) { + if ( mDelegate != null ) { + mDelegate.changeBearing( bearing ); + } + } } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java index 356bb2afb1..108ba2ec75 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java @@ -85,6 +85,10 @@ public class MockIntentHandler implements IntentHandler { } ); } break; + case 8: + float bearing = intent.getFloatExtra( "bearing", 0 ); + MarkerServiceHandler.getMapUIController().changeBearing( bearing ); + break; } } }