Wie stelle ich die Hintergrundfarbe meiner Android-App ein? Wenn ich es versuche:
LinearLayout li=(LinearLayout)findViewById(R.id.myLayout);
li.setBackgroundColor(Color.parseColor("#rrggbb"));
Meine App stürzt immer ab. Könnte mir jemand helfen? Vielen Dank
Color.parseColor("#rrggbb")
anstelle von #rrggbb
sollten Sie die Hex-Werte 0 bis F für rr, gg und bb verwenden:
z.B. Color.parseColor("#000000")
oder Color.parseColor("#FFFFFF")
Aus der Dokumentation:
public static int parseColor (String colorString):
Analysieren Sie die Farbzeichenfolge und geben Sie das entsprechende color-int zurück. Wenn der Zeichenfolge kann nicht analysiert werden. Es wird eine IllegalArgumentException-Ausnahme ausgelöst. Unterstützte Formate sind: #RRGGBB #AARRGGBB 'rot', 'blau', 'grün', 'schwarz', 'weiß', 'grau', 'cyan', 'magenta', 'gelb', 'hellgrau', 'dunkelgrau', 'grau', 'hellgrau', 'dunkelgrau', 'aqua', 'fuschia', 'Limette', 'kastanienbraun', 'navy', 'olive', 'purple', 'silber', 'teal'
Ich glaube also, wenn Sie #rrggbb
verwenden, erhalten Sie IllegalArgumentException in Ihrem Logcat
Alternative:
Color mColor = new Color();
mColor.red(redvalue);
mColor.green(greenvalue);
mColor.blue(bluevalue);
li.setBackgroundColor(mColor);
Diese Frage ist alt, kann aber auch anderen helfen.
Versuche dies :
li.setBackgroundColor(getResources().getColor(R.color.blue));
or
li.setBackgroundColor(getResources().getColor(Android.R.color.red));
or
li.setBackgroundColor(Color.rgb(226, 11, 11));
or
li.setBackgroundColor(Color.RED)
Versuche dies:
li.setBackgroundColor(Android.R.color.red); //or which ever color do you want
BEARBEITEN: Das Buchen der Logcat-Datei würde auch helfen.
Übrigens, ein guter Tipp zum schnellen Auswählen der Farbe in den neueren Versionen von AS ist einfach #fff einzugeben und dann mit dem Farbwähler an der Seite des Codes die gewünschte Farbe auszuwählen. Schnell und einfacher, als sich alle Farb-Hexadezimale zu merken. Zum Beispiel:
Android:background="#fff"