Ich erhalte Hex-Farbwerte von einem Server (in dieser Form #xxxxxx
beispielsweise #000000
für Schwarz).
Wie konvertiere ich dies in einen ganzzahligen Wert?
Ich habe versucht Integer.valueOf("0x" + passedColor.substring(1, passedColor.length()))
, ein noch hextastischeres 0x000000
Ergebnis zu erzielen , aber dies wird nicht als int
hier interpretiert , irgendwelche anderen Vorschläge?
Ich erhalte eine Fehlermeldung: 08-03 21:06:24.673: ERROR/AndroidRuntime(20231): java.lang.NumberFormatException: unable to parse '0x00C8FBFE' as integer
Ich verwende das Android SDK für ihre setBackgroundColor(int color)
Funktion, die - wie Sie vielleicht vermutet haben - einen ganzzahligen Farbwert annimmt.
Dies ist das Gegenteil dieser Frage: Wie konvertiere ich eine Farb-Ganzzahl in eine Hex-Zeichenfolge in Android?
valueOf
Methode mit zwei Argumenten , bei der Sie die Zeichenfolgeneingabe (natürlich ohne #) und den Radix angeben, der die Basis angibt.Integer.valueOf(passedColor.substring(1, passedColor.length()), 16)
Dies kann mit jeder ganzzahligen Basis erfolgen! download.oracle.com/javase/6/docs/api/java/lang/… , int)