diff options
author | Tobrun <tobrun.van.nuland@gmail.com> | 2016-06-02 15:14:07 +0200 |
---|---|---|
committer | Tobrun Van Nuland <tobrun.van.nuland@gmail.com> | 2016-06-03 08:00:56 +0200 |
commit | 087cad037fe0ef57884b4a351a7ecb13248925e5 (patch) | |
tree | a0d318ed546eeb6cae9bce3e63bc7eb1c4d1897d /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java | |
parent | fe40127b12be1228a875bba3c0a5d662839660f8 (diff) | |
download | qtlocation-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.java | 33 |
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} |