diff options
author | tobrun <tobrun.van.nuland@gmail.com> | 2018-07-06 10:00:32 +0200 |
---|---|---|
committer | tobrun <tobrun.van.nuland@gmail.com> | 2018-07-06 10:00:32 +0200 |
commit | 2eafb1aa7c3df42d7b6300f0e26d9021fa36043f (patch) | |
tree | 6b7c579f2256222fcebab015149c394d7326f78f /platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/maps/utils/IconUtils.java | |
parent | ec472cb45ace58b2f159d42f439f51199ca5e34b (diff) | |
download | qtlocation-mapboxgl-upstream/tvn-move-tests.tar.gz |
[android] - consolidate all instrumentation tests in maps packageupstream/tvn-move-tests
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/maps/utils/IconUtils.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/maps/utils/IconUtils.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/maps/utils/IconUtils.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/maps/utils/IconUtils.java new file mode 100644 index 0000000000..ee8d197ed8 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/maps/utils/IconUtils.java @@ -0,0 +1,31 @@ +package com.mapbox.mapboxsdk.maps.utils; + +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.Canvas; +import android.graphics.drawable.Drawable; +import android.support.annotation.ColorInt; +import android.support.annotation.DrawableRes; +import android.support.annotation.NonNull; +import android.support.v4.content.res.ResourcesCompat; +import android.support.v4.graphics.drawable.DrawableCompat; + +import com.mapbox.mapboxsdk.annotations.Icon; +import com.mapbox.mapboxsdk.annotations.IconFactory; + +public class IconUtils { + + /** + * Demonstrates converting any Drawable to an Icon, for use as a marker icon. + */ + public static Icon drawableToIcon(@NonNull Context context, @DrawableRes int id, @ColorInt int colorRes) { + Drawable vectorDrawable = ResourcesCompat.getDrawable(context.getResources(), id, context.getTheme()); + Bitmap bitmap = Bitmap.createBitmap(vectorDrawable.getIntrinsicWidth(), + vectorDrawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); + Canvas canvas = new Canvas(bitmap); + vectorDrawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); + DrawableCompat.setTint(vectorDrawable, colorRes); + vectorDrawable.draw(canvas); + return IconFactory.getInstance(context).fromBitmap(bitmap); + } +} |