361 Stimmen

Wie erhalte ich eine Farbe aus einem hexadezimalen Farbstring?

Ich möchte eine Farbe aus einer Hexa-Zeichenkette verwenden, wie z. B. "#FFFF0000" um (z. B.) die Hintergrundfarbe eines Layouts zu ändern. Color.HSVToColor sieht wie ein Gewinner aus, aber es braucht einen float[] als Parameter.

Bin ich der Lösung überhaupt näher gekommen?

15voto

MindBrain Punkte 6680

Versuchen Sie dies:

vi.setBackgroundColor(Color.parseColor("#FFFF0000"));

12voto

Opy Punkte 2129

Ich verwende dieses Produkt und es funktioniert hervorragend, um jede beliebige Farbe einzustellen.

public static final int MY_COLOR = Color.rgb(255, 102, 153);

Legen Sie die Farben mit 0-255 für jede rote, grüne und blaue dann überall Sie wollen, dass die Farbe verwendet nur MY_COLOR anstelle von Color.BLUE oder Color.RED oder eine der anderen statischen Farben der Klasse Color bietet.

Führen Sie einfach eine Google-Suche nach Farbtabelle durch und Sie finden eine Tabelle mit den korrekten RGB-Codes von 0-255.

9voto

M Umer Punkte 133

Versuchen Sie dies

int colorInt = Color.parseColor("#FF00FFF0");
bg.setBackgroundColor(colorInt);

wobei bg eine Ansicht oder ein Layout ist, für das Sie die Hintergrundfarbe festlegen möchten.

6voto

Shanmugasundharam Punkte 2074

In Xamarin Verwenden Sie diese

Control.SetBackgroundColor(global::Android.Graphics.Color.ParseColor("#F5F1F1"));

5voto

Dave Long Punkte 9249

Versuchen Sie, stattdessen 0xFFF000 zu verwenden, und übergeben Sie dies an die Methode Color.HSVToColor.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X