summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2016-06-02 15:14:07 +0200
committerTobrun Van Nuland <tobrun.van.nuland@gmail.com>2016-06-03 08:00:56 +0200
commit087cad037fe0ef57884b4a351a7ecb13248925e5 (patch)
treea0d318ed546eeb6cae9bce3e63bc7eb1c4d1897d /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
parentfe40127b12be1228a875bba3c0a5d662839660f8 (diff)
downloadqtlocation-mapboxgl-087cad037fe0ef57884b4a351a7ecb13248925e5.tar.gz
[android] #5214 - remove requirement adapter for MarkerView, allow using Icon instead
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java33
1 files changed, 33 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 3e51044643..d0e47110f4 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
@@ -1,5 +1,8 @@
package com.mapbox.mapboxsdk.annotations;
+import android.graphics.Bitmap;
+import android.support.annotation.Nullable;
+
import com.mapbox.mapboxsdk.maps.MapboxMap;
/**
@@ -35,6 +38,8 @@ public class MarkerView extends Marker {
private float rotation;
private float alpha = 1;
+ private Icon markerViewIcon;
+
/**
* Publicly hidden default constructor
*/
@@ -316,6 +321,34 @@ public class MarkerView extends Marker {
}
/**
+ * Set the icon of the MarkerView.
+ *
+ * @param icon the icon to be used as Marker image
+ */
+ @Override
+ public void setIcon(@Nullable Icon icon) {
+ if (icon != null) {
+ markerViewIcon = IconFactory.recreate("icon", icon.getBitmap());
+ }
+ Bitmap bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
+ Icon transparentIcon = IconFactory.recreate("markerViewSettings", bitmap);
+ if (markerViewManager != null) {
+ markerViewManager.updateIcon(this);
+ }
+ super.setIcon(transparentIcon);
+ }
+
+ /**
+ * Get the icon of the MarkerView.
+ *
+ * @return the icon use as Marker image
+ */
+ @Override
+ public Icon getIcon() {
+ return markerViewIcon;
+ }
+
+ /**
* Set the MapboxMap associated tot the MapView containing the MarkerView.
* <p>
* This method is used to instantiate the MarkerView and provide an instance of {@link com.mapbox.mapboxsdk.maps.MapboxMap.MarkerViewAdapter}