web-dev-qa-db-fra.com

définir la couleur de fond: Android

Comment définir la couleur de fond de mon application Android? Quand j'essaye:

LinearLayout li=(LinearLayout)findViewById(R.id.myLayout);
li.setBackgroundColor(Color.parseColor("#rrggbb"));

Mon application se bloque toujours. Est-ce que quelqu'un peut me donner un coup de main. Merci

25
Cj1m
Color.parseColor("#rrggbb")

au lieu de #rrggbb, vous devriez utiliser les valeurs hexadécimales 0 à F pour rr, gg et bb:

par exemple. Color.parseColor("#000000") ou Color.parseColor("#FFFFFF")

La source

De la documentation:

public static int parseColor (String colorString):

Analyser la chaîne de couleur et renvoyer le color-int correspondant. Si la chaîne ne peut pas être analysée, lève une exception IllegalArgumentException . Les formats pris en charge sont: #RRGGBB #AARRGGBB 'rouge', 'bleu', 'vert', «noir», «blanc», «gris», «cyan», «magenta», «jaune», «gris foncé», «gris foncé», «gris», «gris clair», «gris foncé», «aqua», «fuschia», «Citron vert», «marron», «marine», «olive», «violet», «argenté», «turquoise»

Je pense donc que si vous utilisez #rrggbb, vous obtenez IllegalArgumentException dans votre logcat

La source

Alternative:

Color mColor = new Color();
mColor.red(redvalue);
mColor.green(greenvalue);
mColor.blue(bluevalue);
li.setBackgroundColor(mColor);

La source

48
Boris Mocialov

Cette question est ancienne mais elle peut aussi aider les autres.

Essaye ça :

    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)
14
sherin

Essaye ça:

li.setBackgroundColor(Android.R.color.red); //or which ever color do you want

EDIT: Publier un fichier logcat serait également utile.

6
Guy

En passant, un bon conseil pour sélectionner rapidement une couleur dans les nouvelles versions d'AS consiste simplement à taper #fff, puis à utiliser le sélecteur de couleur situé sur le côté du code pour choisir celui que vous voulez. Rapide et plus facile que de se souvenir de tous les hexadécimaux de couleur. Par exemple:

Android:background="#fff"
0
Handel 38