summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorTobrun <tobrun@mapbox.com>2017-03-24 18:41:20 +0100
committerGitHub <noreply@github.com>2017-03-24 18:41:20 +0100
commitc7722b54a846a76736369cc98c59c81b3687201b (patch)
tree90ff36412dd25e5badd5e2f01b93f38465c59ddf /platform
parent83cef9eb686991d5ba31f89e3fe11cafcb4fd5bf (diff)
downloadqtlocation-mapboxgl-c7722b54a846a76736369cc98c59c81b3687201b.tar.gz
[android] - correct anchoring when Icon is updated (#8519)
Diffstat (limited to 'platform')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java9
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.java1
2 files changed, 10 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
index 220d3322cb..30336d4ebd 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
@@ -390,6 +390,15 @@ public class MarkerView extends Marker {
}
/**
+ * Invalidates the MarkerView resulting in remeasuring the View.
+ */
+ void invalidate() {
+ width = height = 0;
+ offsetX = offsetY = MapboxConstants.UNMEASURED;
+ markerViewManager.invalidateViewMarkersInVisibleRegion();
+ }
+
+ /**
* Get the String representation of a MarkerView.
*
* @return the String representation.
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.java
index 0f1298eeaf..3b77bc8a1d 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.java
@@ -233,6 +233,7 @@ public class MarkerViewManager implements MapView.OnMapChangedListener {
View convertView = markerViewMap.get(markerView);
if (convertView != null && convertView instanceof ImageView) {
((ImageView) convertView).setImageBitmap(markerView.getIcon().getBitmap());
+ markerView.invalidate();
}
}