diff options
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java index 5338fb84f6..ad603d356e 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java @@ -6,6 +6,7 @@ import android.support.annotation.ColorInt; import com.mapbox.mapboxsdk.style.expressions.Expression; +import java.text.DecimalFormat; import java.util.Locale; /** @@ -2397,22 +2398,29 @@ public class PropertyFactory { /** * Converts Android color int to "rbga(r, g, b, a)" String equivalent. + * <p> + * Alpha value will be converted from 0-255 range to 0-1. + * </p> * * @param color Android color int * @return String rgba color */ public static String colorToRgbaString(@ColorInt int color) { - return String.format(Locale.US, "rgba(%d, %d, %d, %d)", - (color >> 16) & 0xFF, (color >> 8) & 0xFF, color & 0xFF, (color >> 24) & 0xFF); + String alpha = new DecimalFormat("#.###").format(((float)((color >> 24) & 0xFF)) / 255.0f); + return String.format(Locale.US, "rgba(%d, %d, %d, %s)", + (color >> 16) & 0xFF, (color >> 8) & 0xFF, color & 0xFF, alpha); } /** - * Converts Android color int to rgba int array. + * Converts Android color int to rgba float array. + * <p> + * Alpha value will be converted from 0-255 range to 0-1. + * </p> * * @param color Android color int * @return int rgba array */ - public static int[] colorToRgbaArray(@ColorInt int color) { - return new int[] {(color >> 16) & 0xFF, (color >> 8) & 0xFF, color & 0xFF, (color >> 24) & 0xFF}; + public static float[] colorToRgbaArray(@ColorInt int color) { + return new float[] {(color >> 16) & 0xFF, (color >> 8) & 0xFF, color & 0xFF, ((color >> 24) & 0xFF) / 255.0f}; } -} +}
\ No newline at end of file |