Как я могу программно установить белый цвет фона для Activity?
128
Как я могу программно установить белый цвет фона для Activity?
Получите дескриптор используемого корневого макета, затем установите для него цвет фона. Корневой макет - это то, с чем вы вызвали setContentView.
setContentView(R.layout.main);
// Now get a handle to any View contained
// within the main layout you are using
View someView = findViewById(R.id.randomViewInMainLayout);
// Find the root view
View root = someView.getRootView();
// Set the color
root.setBackgroundColor(getResources().getColor(android.R.color.red));
root.setBackgroundColor(getResources().getColor(android.R.color.red));
Добавьте эту единственную строку в свою деятельность после
setContentView()
звонкаисточник
Я предпочитаю раскраску по теме
источник
android:windowBackground
сначала отображается, на короткое время, а затем цвет фона макета берет верх. Поэтому, если вы используете два разных цвета, они будут мерцать на экране.windowBackground
влияет только на фон окна, но такжеcolorBackground
влияет на все представления. stackoverflow.com/questions/26266221/…Другими словами, «android: background» - это тег в XML, который вы хотите изменить.
Если вам нужно динамически обновить значение фона, см. Следующее:
Упражнение: изменение цвета фона с помощью SeekBar
источник
В вашем
onCreate()
методе:Также вам необходимо добавить в папку значений новый файл XML с именем
color.xml
и назначить ему новое свойство цвета:color.xml:
Обратите внимание, что вы можете назвать
color.xml
любое имя, которое хотите, но вы обращаетесь к нему по коду какR.color.yourId
.РЕДАКТИРОВАТЬ
Поскольку
getResources().getColor()
не рекомендуется использоватьgetWindow().getDecorView().setBackgroundColor(ContextCompat.getColor(MainActivity.this, R.color.main_activity_background_color));
вместо этого.источник
Вы можете использовать это для вызова предопределенных цветов Android:
Если вы хотите использовать один из ваших собственных цветов, вы можете добавить свой собственный цвет в strings.xml, а затем использовать приведенный ниже код для его вызова.
Однако, если вы хотите установить цвет в своем layout.xml, вы можете изменить и добавить приведенный ниже код к любому элементу, который его принимает.
источник
Чтобы получить корневое представление, определенное в вашем XML-файле, без панели действий, вы можете использовать это:
Итак, чтобы изменить цвет на белый:
источник
работал у меня. Спасибо.
источник
источник
источник