summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2015-12-23 12:11:30 +0100
committerTobrun <tobrun.van.nuland@gmail.com>2015-12-23 16:32:09 +0100
commit11a8978eed54376bcb3b30afa636484959cbff14 (patch)
tree1d59e305e2ceb6ef47ce504e41d60c1ba8813888 /platform
parent2e69d95c6bc68d01c9db8cd8c4af9d689191eda9 (diff)
downloadqtlocation-mapboxgl-11a8978eed54376bcb3b30afa636484959cbff14.tar.gz
[android] #3283 - fix setCenterCoordinate animation
Diffstat (limited to 'platform')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java
index 385eec4c29..56e04c1557 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java
@@ -67,6 +67,7 @@ import com.mapbox.mapboxsdk.annotations.PolylineOptions;
import com.mapbox.mapboxsdk.annotations.IconFactory;
import com.mapbox.mapboxsdk.camera.CameraPosition;
import com.mapbox.mapboxsdk.camera.CameraUpdate;
+import com.mapbox.mapboxsdk.camera.CameraUpdateFactory;
import com.mapbox.mapboxsdk.constants.MathConstants;
import com.mapbox.mapboxsdk.constants.MyBearingTracking;
import com.mapbox.mapboxsdk.constants.MyLocationTracking;
@@ -1084,9 +1085,16 @@ public final class MapView extends FrameLayout {
Log.w(TAG, "centerCoordinate was null, so just returning");
return;
}
- long duration = animated ? ANIMATION_DURATION : 0;
- mNativeMapView.cancelTransitions();
- mNativeMapView.setLatLng(centerCoordinate, duration);
+
+ if (animated) {
+ CameraPosition cameraPosition = new CameraPosition.Builder(getCameraPosition())
+ .target(centerCoordinate)
+ .build();
+ animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition),
+ (int) ANIMATION_DURATION, null);
+ } else {
+ jumpTo(mNativeMapView.getBearing(), centerCoordinate, mNativeMapView.getPitch(), mNativeMapView.getZoom());
+ }
}