Como alterar a cor de fundo no aplicativo Android

253

Quero poder alterar a cor do plano de fundo para branco no meu aplicativo Android da maneira mais simples possível.

ryan
fonte

Respostas:

348

Você precisa usar a propriedade android: background, por exemplo

android:background="@color/white"

Além disso, você precisa adicionar um valor para branco no arquivo strings.xml

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

Edição: 18/11/2012

As duas primeiras letras de um código de cores de 8 letras fornecem o valor alfa, se você estiver usando a notação de cores em 6 letras html, a cor é opaca.

Por exemplo :

insira a descrição da imagem aqui

Ravi Vyas
fonte
@ Jonny as duas primeiras letras fornecem o valor alfa.
Ravi Vyas
Obrigado, mas não é mais fácil usar o valor hexadecimal?
the_prole
seria muito fácil, mas má prática :)
Ravi Vyas
3
É ainda mais fácil usar o android:background="@android:color/white"que é predefinido e não requer que você adicione nada ao strings.xml.
Greg Hewgill
Você poderia adicionar o local /res/layout/activity_main.xmlpara adicionar o elemento android:backgroundà resposta?
030
157

Você também pode usar

android:background="#ffffff"

no seu layout xml ou /res/layout/activity_main.xml, ou você pode alterar o tema no seu AndroidManifest.xml adicionando

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

à sua tag de atividade.

Se você deseja alterar o plano de fundo dinamicamente, use

YourView.setBackgroundColor(Color.argb(255, 255, 255, 255));
James
fonte
Esta é a resposta certa, porque tem temas, acredito. Um one-liner NÃO é a maneira mais simples, mas uma maneira de espalhar um estilo inteiro para tudo é. Os estilos são como você alcança uma linha com alterações ainda complexas. Além disso, os estilos funcionam nas preferências, diferentemente dos atributos gerais. (embora ainda com algumas excentricidades)
Stephen J
60

Maneira mais simples

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

Não há necessidade de definir nada. Ele usa cores predefinidas em android.R.

Paschalis
fonte
7
e programaticamente:context.getResources().getColor(android.R.color.white)
Paschalis
1
obrigado, era realmente o que eu estava procurando. No meu caso, eu tenho que fazer isso em Java.
precisa saber é o seguinte
10

Para alterar a cor do plano de fundo da maneira mais simples possível programaticamente (exclusivamente - sem alterações de XML):

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

O único requisito é que seu elemento "base" no activity_whatever.xml tenha um ID que você possa referenciar em Java ( containerneste caso):

<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 e James, que responderam aqui, meio que me levaram a essa solução, depois de verificar as várias possibilidades em Como definir a cor do texto do TextView no código? .

Espero que ajude alguém!

Armfoot
fonte
4

Este método funcionou para mim:

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

Definir código no layout 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"

Adicionar valores de cor / color.xml

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

A maneira mais simples é adicionar android:background="#FFFFFF"ao nó principal no 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
fonte
Essa não é uma boa ideia, pois resultará em excesso desnecessário de GPU (primeiro, o plano de fundo da janela será desenhado e, em seguida, o plano de fundo do TextView). Veja: curious-creature.com/docs/android-performance-case-study-1.html
Miloš Černilovský
3

A melhor maneira de usar o plano de fundo com gradiente, pois não aumenta o tamanho do aplicativo, as imagens do seu aplicativo são venenosas para o aplicativo Android. Portanto, tente usá-lo menos em vez de usar uma cor como plano de fundo. Você pode usar várias cores em um plano de fundo. insira a descrição da imagem aqui insira a descrição da imagem aqui

insira a descrição da imagem aquiinsira a descrição da imagem aqui

Najaf Ali
fonte
2

Você pode tentar isso na xmlfolha:

android:background="@color/background_color"
ashwini
fonte
1

Em Layout, para alterar o plano de fundo, use isso.

android:background="@color/your_color"

No programa pode ser usado isso. Por exemplo: cor de fundo do Texview

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

você pode tentar dessa maneira

android:background="@color/white"
Kumar
fonte
0

Outra maneira, vá para layout -> seu arquivo .xml -> visualização de design. Em seguida, vá para a árvore de componentes e selecione o layout que deseja alterar de cor. Na árvore de componentes abaixo, há a seção de propriedades . Selecione plano de fundo na seção de propriedades (Na seção de figura 1). Em seguida, clique na seção 2 na imagem. Em seguida , a janela Recursos será aberta. A partir desse menu, selecione a cor. Em seguida, escolha a cor desejada. insira a descrição da imagem aqui

RoshanS
fonte
0

Você pode usar recursos de cores simples, especificados geralmente dentro

res/values/colors.xml.

usar

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

e use isso via android:background="@color/red". Essa cor também pode ser usada em qualquer outro lugar, por exemplo, como uma cor de texto. Referencie-o em XML da mesma maneira ou obtenha-o em código via

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

Você também pode usar qualquer recurso desenhável como pano de fundo, use android:background="@drawable/mydrawable"para isso (isso significa desenhos de 9 patches, bitmaps normais, desenhos de formas, etc.).

Focaloid
fonte
0

Algumas vezes, o texto tem a mesma cor do plano de fundo, tente com android: background = "# CCCCCC" nas propriedades do listview e você poderá ver isso.

Ingeniería Ceet
fonte
0

android: background = "# 64B5F6"
Você pode alterar o valor após '#' de acordo com sua própria especificação ou necessidade, dependendo de como deseja usá-los.
Aqui está um código de exemplo:

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

Obrigado :)

ranit
fonte
0
  1. vá para Activity_Main.xml
  2. há exibição de design / e exibição de texto.
  3. escolha a exibição de texto
  4. escreva este código:

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

Se você deseja adicionar cor de fundo a toda a atividade

<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>

Se você deseja usar o plano de fundo para uma visualização

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

Espero que isto ajude!

tharini krishnan
fonte
0

Este código pode ser útil para você:

android:background="#fff"
ebnesina
fonte
0

Quero poder alterar a cor do plano de fundo para branco no meu aplicativo Android da maneira mais simples possível.

A pergunta diz o caminho mais simples, então aqui está.

Defina parentViewStyleem todas as suas visualizações principais. Como a maioria das visualizações principais de sua atividade, fragmentos e caixas de diálogo.

<LinearLayout style="@style/parentViewStyle">

  ... other components inside

</LinearLayout>

Basta colocar esse estilo dentro 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>

Dessa forma, você não precisará alterar a cor do plano de fundo muitas vezes no futuro.

Khemraj
fonte
0

Para Kotlin e não apenas quando você escreve

@cor/

você pode escolher o que quiser, rápida e simplesmente:

android:background="@color/md_blue_900"
Alessandro Ornano
fonte