diff --git a/android/src/main/java/com/mapbox/reactnativemapboxgl/ReactNativeMapboxGLManager.java b/android/src/main/java/com/mapbox/reactnativemapboxgl/ReactNativeMapboxGLManager.java index 3721e29..29bc6a0 100644 --- a/android/src/main/java/com/mapbox/reactnativemapboxgl/ReactNativeMapboxGLManager.java +++ b/android/src/main/java/com/mapbox/reactnativemapboxgl/ReactNativeMapboxGLManager.java @@ -153,7 +153,15 @@ public class ReactNativeMapboxGLManager extends SimpleViewManager { image = drawableFromUrl(mapView, annotationURL); } IconFactory iconFactory = view.getIconFactory(); - Icon icon = iconFactory.fromDrawable(image); + Icon icon; + if (annotationImage.hasKey("height") && annotationImage.hasKey("width")) { + float scale = view.getResources().getDisplayMetrics().density; + int height = Math.round((float)annotationImage.getInt("height") * scale); + int width = Math.round((float)annotationImage.getInt("width") * scale); + icon = iconFactory.fromDrawable(image, width, height); + } else { + icon = iconFactory.fromDrawable(image); + } marker.icon(icon); } catch (Exception e) { e.printStackTrace();