diff options
author | Tobrun <tobrun.van.nuland@gmail.com> | 2016-10-07 16:47:16 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-07 16:47:16 +0200 |
commit | 740c995c2b37bd896c87b2d8e22d644e09bc3e42 (patch) | |
tree | 877b07e913883953f6f847c705f6eee6390a33e4 | |
parent | 3b8b68d028934761b3b3d6ab8129e7b637fd14fe (diff) | |
download | qtlocation-mapboxgl-740c995c2b37bd896c87b2d8e22d644e09bc3e42.tar.gz |
[android] - apply tilt to markerview with initial camera position (#6622)
2 files changed, 8 insertions, 2 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java index 0d09892cbc..c080445e06 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java @@ -469,6 +469,8 @@ public class MapView extends FrameLayout { reloadIcons(); reloadMarkers(); adjustTopOffsetPixels(); + + // Notify listeners the map is ready if (onMapReadyCallbackList.size() > 0) { Iterator<OnMapReadyCallback> iterator = onMapReadyCallbackList.iterator(); while (iterator.hasNext()) { @@ -476,8 +478,11 @@ public class MapView extends FrameLayout { callback.onMapReady(mapboxMap); iterator.remove(); } - mapboxMap.getMarkerViewManager().scheduleViewMarkerInvalidation(); } + + // invalidate camera to update overlain views with correct tilt value + invalidateCameraPosition(); + } else if (change == REGION_IS_CHANGING || change == REGION_DID_CHANGE || change == DID_FINISH_LOADING_MAP) { mapboxMap.getMarkerViewManager().scheduleViewMarkerInvalidation(); @@ -658,6 +663,7 @@ public class MapView extends FrameLayout { } void setTilt(Double pitch) { + mapboxMap.getMarkerViewManager().setTilt(pitch.floatValue()); myLocationView.setTilt(pitch); nativeMapView.setPitch(pitch, 0); } @@ -1533,6 +1539,7 @@ public class MapView extends FrameLayout { } CameraPosition position = new CameraPosition.Builder(nativeMapView.getCameraValues()).build(); myLocationView.setCameraPosition(position); + mapboxMap.getMarkerViewManager().setTilt((float) Math.toDegrees(position.tilt)); return position; } diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java index a3368b4c78..5192068954 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java @@ -785,7 +785,6 @@ public class MapboxMap { // void setTilt(double tilt) { - markerViewManager.setTilt((float) tilt); mapView.setTilt(tilt); } |