summaryrefslogtreecommitdiff
path: root/mapbox/src/main/java/com/example/mapbox/extensions/ResourceExtensions.kt
diff options
context:
space:
mode:
authormalwoodsantoro <mallorywood413@gmail.com>2019-07-10 10:50:20 -0700
committermalwoodsantoro <mallorywood413@gmail.com>2019-07-10 10:50:20 -0700
commita2115c086f40007aca016cef5f5c99284728fa17 (patch)
tree7acb162a76376d02c33d321952ffabbd81fe4e73 /mapbox/src/main/java/com/example/mapbox/extensions/ResourceExtensions.kt
parent6b1fb1a1dbff55472511f08167b915b0925e1ea3 (diff)
downloadqtlocation-mapboxgl-a2115c086f40007aca016cef5f5c99284728fa17.tar.gz
add relevant code
Diffstat (limited to 'mapbox/src/main/java/com/example/mapbox/extensions/ResourceExtensions.kt')
-rw-r--r--mapbox/src/main/java/com/example/mapbox/extensions/ResourceExtensions.kt25
1 files changed, 25 insertions, 0 deletions
diff --git a/mapbox/src/main/java/com/example/mapbox/extensions/ResourceExtensions.kt b/mapbox/src/main/java/com/example/mapbox/extensions/ResourceExtensions.kt
new file mode 100644
index 0000000000..785ed32840
--- /dev/null
+++ b/mapbox/src/main/java/com/example/mapbox/extensions/ResourceExtensions.kt
@@ -0,0 +1,25 @@
+package com.example.mapbox.extensions
+
+import android.content.res.Resources
+import android.graphics.Bitmap
+import android.graphics.Canvas
+import android.graphics.drawable.BitmapDrawable
+import android.graphics.drawable.Drawable
+import androidx.annotation.DrawableRes
+
+fun Resources.getBitmapFromDrawable(@DrawableRes drawableResId: Int): Bitmap {
+ return getDrawable(drawableResId, null).getBitmapFromDrawable()
+}
+
+fun Drawable.getBitmapFromDrawable(): Bitmap {
+ return if (this is BitmapDrawable) {
+ bitmap
+ } else {
+ val bitmap = Bitmap.createBitmap(intrinsicWidth, intrinsicHeight, Bitmap.Config.ARGB_8888)
+ Canvas(bitmap).let {
+ setBounds(0, 0, it.width, it.height)
+ draw(it)
+ bitmap
+ }
+ }
+} \ No newline at end of file