Как изменить цвет фона в приложении для Android - PullRequest
237 голосов
/ 01 мая 2010

Я хочу иметь возможность изменить цвет фона на белый в моем приложении для Android самым простым способом.

Ответы [ 18 ]

337 голосов
/ 01 мая 2010

Вам необходимо использовать свойство android: background, например,

android:background="@color/white"

Также вам нужно добавить значение для белого в strings.xml

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

Редактировать: 18 ноября 2012

Первые две буквы 8-буквенного цветового кода обеспечивают альфа-значение, если вы используете html 6-буквенное цветовое обозначение, цвет непрозрачный.

Например:

enter image description here

153 голосов
/ 02 мая 2010

Вы также можете использовать

android:background="#ffffff"

в макете xml или /res/layout/activity_main.xml, или вы можете изменить тему в вашем AndroidManifest.xml, добавив

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

в свою деятельностьtag.

Если вы хотите динамически изменить фон, используйте

YourView.setBackgroundColor(Color.argb(255, 255, 255, 255));
58 голосов
/ 14 июля 2012

Самый простой способ

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

Не нужно ничего определять. Он использует предопределенные цвета в android.R.

10 голосов
/ 30 августа 2014

Чтобы изменить цвет фона самым простым способом, программно (исключительно - без изменений XML):

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

Единственное требование заключается в том, чтобы ваш "базовый" элемент в activity_whwhat.xml имел идентификатор, на который вы можете ссылаться в Java (container в данном случае):

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

Пасхалис и Джеймс, которые ответили здесь, как бы привели меня к этому решению, после проверки различных возможностей в Как установить цвет текста TextView в коде? .

Надеюсь, это кому-нибудь поможет!

4 голосов
/ 21 декабря 2015

Этот метод работал для меня:

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

Установить идентификатор в макете 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"

Добавить значения цвета / color.xml

<color name="bg_color_2">#ffeef7f0</color>
3 голосов
/ 10 августа 2017

Лучший способ использовать фон с градиентом, так как он не увеличивает размер приложения. Изображения для приложения являются вредными для приложения для Android, поэтому старайтесь использовать его меньше, вместо использования одного цвета в качестве фона, вы можете использовать несколько цветов на одном фоне. enter image description here enter image description here

enter image description hereenter image description here

3 голосов
/ 16 января 2014

Самый простой способ - добавить android:background="#FFFFFF" к основному узлу в layout.xml или /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>
2 голосов
/ 11 июля 2016

Вы можете попробовать это на xml листе:

android:background="@color/background_color"
1 голос
/ 20 июля 2016

В Layout, чтобы изменить фон, используйте это.

android:background="@color/your_color"

В Программе можно использовать это. Например: цвет фона Texview

 TextView tvName = (TextView) findViewById(R.id.tvName);
 tvName.setBackgroundColor(getResources().getColor(R.color.your_color));
0 голосов
/ 10 августа 2018

Этот код может быть полезен для вас:

android:background="#fff"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...