How to Convert a Color Integer to a Hex String in Android

How to convert a color integer to a hex String in Android?

The mask makes sure you only get RRGGBB, and the %06X gives you zero-padded hex (always 6 chars long):

String hexColor = String.format("#%06X", (0xFFFFFF & intColor));

Android convert color int to hexa String

The answer of st0le is not correct with respect to colors. It does not work if first color components are 0. So toHexString is useless.

However this code will work as expected:

String strColor = String.format("#%06X", 0xFFFFFF & intColor);

Android Convert Int to Hex Color

The ColorDrawable takes an int as parameter not string. I suppose actionColor is also an integer (color hex) so you should do this.

int color = 0xFFFFFF & actionColor;
actionBar.setBackgroundDrawable(new ColorDrawable(color));

Convert a RGB Color Value to a Hexadecimal String

You can use

String hex = String.format("#%02x%02x%02x", r, g, b);  

Use capital X's if you want your resulting hex-digits to be capitalized (#FFFFFF vs. #ffffff).

Converting hexadecimal colour string back to integer

You have two possibilities to convert a hex representation to int.

By casting a parsed long to int

int color = (int) Long.parseLong(hex, 16);

or by using a BigInteger to parse the value

int color = new BigInteger(hex, 16).intValue();

Some time in the future you might also be able to use the Java 8 method for parsing unsigned int values

int color = Integer.parseUnsignedInt(hex, 16);

Convert hex color value ( #ffffff ) to integer value

The real answer is to use:

Color.parseColor(myPassedColor) in Android, myPassedColor being the hex value like #000 or #000000 or #00000000.

However, this function does not support shorthand hex values such as #000.

android int to hex converting

Documentation says Integer.toHexString returns the hexadecimal representation of the int as an unsigned value.

I believe Integer.toString(value, 16) will accomplish what you want.

Conveter RGB to HEX code in android

You can use

String hex = String.format("#%02x%02x%02x", r, g, b);

How to get a Color from hexadecimal Color String

Try Color class method:

public static int parseColor (String colorString)

From Android documentation:

Supported formats are: #RRGGBB #AARRGGBB 'red', 'blue', 'green', 'black', 'white', 'gray', 'cyan', 'magenta', 'yellow', 'lightgray', 'darkgray'

AndroidX: String.toColorInt()



Related Topics



Leave a reply



Submit