Comment changer la couleur d'arrière-plan dans l'application Android

253

Je veux pouvoir changer la couleur d'arrière-plan en blanc dans mon application Android de la manière la plus simple possible.

ryan
la source

Réponses:

348

Vous devez utiliser la propriété android: background, par exemple

android:background="@color/white"

Vous devez également ajouter une valeur pour le blanc dans le fichier strings.xml

<color name="white">#FFFFFF</color>

Edit: 18 novembre 2012

Les deux premières lettres d'un code couleur à 8 lettres fournissent la valeur alpha, si vous utilisez la notation couleur html à 6 lettres, la couleur est opaque.

Par exemple :

entrez la description de l'image ici

Ravi Vyas
la source
@Jonny, les deux premières lettres fournissent la valeur alpha.
Ravi Vyas
Merci, mais n'est-il pas plus simple d'utiliser la valeur hexadécimale?
the_prole
ce serait très facile, mais une mauvaise pratique :)
Ravi Vyas
3
Il est encore plus facile à utiliser, android:background="@android:color/white"ce qui est prédéfini et ne vous oblige pas à ajouter quoi que ce soit à strings.xml.
Greg Hewgill
Pourriez-vous ajouter l'emplacement /res/layout/activity_main.xmlpour ajouter l'élément android:backgroundà la réponse?
030
157

Vous pouvez aussi utiliser

android:background="#ffffff"

dans votre mise en page xml ou /res/layout/activity_main.xml, ou vous pouvez changer le thème dans votre AndroidManifest.xml en ajoutant

android:theme="@android:style/Theme.Light"

à votre balise d'activité.

Si vous souhaitez modifier l'arrière-plan dynamiquement, utilisez

YourView.setBackgroundColor(Color.argb(255, 255, 255, 255));
James
la source
C'est la bonne réponse car elle a des thèmes, je crois. Un one-liner n'est PAS le moyen le plus simple, mais un moyen de diffuser un style entier à tout. Les styles sont la façon dont vous obtenez une ligne avec des changements même complexes. En outre, les styles fonctionnent sur les préférences, contrairement aux attributs généraux. (bien que toujours avec quelques bizarreries)
Stephen J
60

Manière la plus simple

android:background="@android:color/white"

Pas besoin de définir quoi que ce soit. Il utilise des couleurs prédéfinies dans android.R.

Paschalis
la source
7
et programmatique:context.getResources().getColor(android.R.color.white)
Paschalis
1
merci, c'était en fait ce que je cherchais. Dans mon cas, je dois le faire en Java.
Armfoot
10

Pour modifier la couleur d'arrière-plan de la manière la plus simple possible par programme (exclusivement - aucune modification XML):

LinearLayout bgElement = (LinearLayout) findViewById(R.id.container);
bgElement.setBackgroundColor(Color.WHITE);

La seule exigence est que votre élément "de base" dans le fichier activity_wwhat.xml ait un identifiant que vous pouvez référencer en Java ( containerdans ce cas):

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/container"
              android:layout_width="match_parent"
              android:layout_height="match_parent">
     ...
</LinearLayout>

Paschalis et James, qui ont répondu ici, m'ont un peu conduit à cette solution, après avoir vérifié les différentes possibilités dans Comment définir la couleur du texte de TextView dans le code? .

J'espère que cela aide quelqu'un!

Armfoot
la source
4

Cette méthode a fonctionné pour moi:

RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.layout.rootLayout);
relativeLayout.setBackgroundColor(getResources().getColor(R.color.bg_color_2));

Définir l'identifiant dans la mise en page xml

xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/rootLayout"
android:background="@color/background_color"

Ajouter des valeurs de couleur / color.xml

<color name="bg_color_2">#ffeef7f0</color>
Felix Cruz
la source
3

Le moyen le plus simple consiste à ajouter android:background="#FFFFFF"au nœud principal dans le fichier layout.xml ou /res/layout/activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
   <TextView xmlns:android="http://schemas.android.com/apk/res/android"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:padding="10dp"
       android:textSize="20sp" 
       android:background="#FFFFFF">
   </TextView>
Lo Juego
la source
Ce n'est pas une bonne idée, car cela entraînera un dépassement inutile du GPU (d'abord, l'arrière-plan de la fenêtre sera dessiné, puis l'arrière-plan de TextView au-dessus). Voir: curious-creature.com/docs/android-performance-case-study-1.html
Miloš Černilovský
3

La meilleure façon d'utiliser un arrière-plan avec un dégradé car cela n'augmente pas la taille de l'application de vos images d'application est un poison pour l'application Android, alors essayez de l'utiliser moins au lieu d'utiliser une couleur comme arrière-plan, vous pouvez utiliser plusieurs couleurs dans un seul arrière-plan. entrez la description de l'image ici entrez la description de l'image ici

entrez la description de l'image icientrez la description de l'image ici

Najaf Ali
la source
2

Vous pouvez essayer ceci dans la xmlfeuille:

android:background="@color/background_color"
ashwini
la source
1

Dans Layout, pour changer l'arrière-plan, utilisez ceci.

android:background="@color/your_color"

Dans le programme peut être utilisé cela. Par exemple: couleur d'arrière-plan Texview

 TextView tvName = (TextView) findViewById(R.id.tvName);
 tvName.setBackgroundColor(getResources().getColor(R.color.your_color));
Sarath VK
la source
0

vous pouvez essayer de cette façon

android:background="@color/white"
Kumar
la source
0

Une autre façon, allez dans la disposition -> votre fichier .xml -> la vue de conception. Ensuite, allez dans l'arborescence des composants et sélectionnez la disposition dont vous souhaitez changer la couleur. Dans l'arborescence des composants ci-dessous, il y a une section de propriétés . Sélectionnez l' arrière-plan dans la section des propriétés (dans la section d'image 1). Cliquez ensuite sur la section 2 de l'image. Ensuite, la fenêtre Ressources sera ouverte. A partir de ce menu de sélection de couleur . Ensuite, choisissez la couleur que vous voulez. entrez la description de l'image ici

RoshanS
la source
0

Vous pouvez utiliser des ressources de couleur simples, spécifiées généralement à l'intérieur

res/values/colors.xml.

utilisation

<color name="red">#ffff0000</color>

et l'utiliser via android:background="@color/red". Cette couleur peut également être utilisée ailleurs, par exemple comme couleur de texte. Référencez-le en XML de la même manière, ou obtenez-le en code via

getResources().getColor(R.color.red).

Vous pouvez également utiliser n'importe quelle ressource dessinable comme arrière-plan, utilisez android:background="@drawable/mydrawable"-la (cela signifie que les tirables 9patch, les bitmaps normaux, les dessinables de forme, ..).

Focaloid
la source
0

Parfois, le texte a la même couleur que l'arrière-plan, essayez avec android: background = "# CCCCCC" dans les propriétés listview et vous pourrez le voir.

Ingeniería Ceet
la source
0

android: background = "# 64B5F6"
Vous pouvez modifier la valeur après '#' selon vos propres spécifications ou besoin selon la façon dont vous souhaitez les utiliser.
Voici un exemple de code:

<TextView
        android:text="Abir"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:background="#D4E157"  />

Je vous remercie :)

ranit
la source
0
  1. accédez à Activity_Main.xml
  2. il existe une vue design / et une vue texte.
  3. choisissez la vue Texte
  4. écrire ce code:

    android:background="@color/colorAccent"
Mohamed Seda
la source
0

Si vous souhaitez ajouter une couleur d'arrière-plan à l'ensemble de l'activité

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#1de9b6"
    tools:context="com.example.abc.myapplication.MainActivity">
 </RelativeLayout>

Si vous souhaitez utiliser l'arrière-plan pour une vue

 <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Andrios"
    android:background="@color/colorAccent" />

J'espère que cela t'aides!

tharini krishnan
la source
0

Ce code peut vous être utile:

android:background="#fff"
Ebnesina
la source
0

Je veux pouvoir changer la couleur d'arrière-plan en blanc dans mon application Android de la manière la plus simple possible.

La question dit Simplest Way, alors la voici.

Définissez parentViewStyletoutes vos vues parentales. Comme la plupart des vues parentales de votre activité, fragment et dialogues.

<LinearLayout style="@style/parentViewStyle">

  ... other components inside

</LinearLayout>

Il suffit de mettre ce style à l'intérieur res>values>styles.xml

<style name="parentViewStyle">
    <item name="android:layout_height">match_parent</item>
    <item name="android:layout_width">match_parent</item>
    <item name="android:background">@color/white</item> // set your color here.
    <item name="android:orientation">vertical</item>
</style>

De cette façon, vous n'aurez pas à changer la couleur d'arrière-plan plusieurs fois à l'avenir.

Khemraj
la source
0

Pour Kotlin et pas seulement, lorsque vous écrivez

@Couleur/

vous pouvez choisir ce que vous voulez, rapidement et simplement:

android:background="@color/md_blue_900"
Alessandro Ornano
la source