Вопрос по android, android-layout – Android - как установить цвет фона всех экранов?

62

Какова лучшая практика для поддержания стилей шрифтов и цветов. Я создал файл colors.xml, который использовал для изменения цвета отдельных элементов, таких как кнопки, но я не уверен, как Android хочет, чтобы разработчики организовывали свои стили.

Например, я бы хотел, чтобы все экраны имели одинаковый цвет фона. Как я могу это сделать? Это то, что мне нужно указать для каждого макета Activity XML? Или в другом месте? Как мне это сделать?

Вы можете либо применить некоторую фоновую тему к каждому верхнему LinearLayout (или тому, что вы используете), либо вы можете сделать это черезtheme for your activity zapl
вы создаетеstyles и применить их к вашим элементам пользовательского интерфейса zapl
@zapl это то, что я делал. Мне было интересно, как применить стиль ко всему экрану. Как цвет фона для каждого экрана? GeekedOut
@zapl о да, это помогает! Спасибо! GeekedOut

Ваш Ответ

3   ответа
7

xml

<application
   ...
   android:theme="@style/MyTheme">

(Примечание: я не могу это комментировать принятым ответом, так как моя репутация слишком низкая).

163

что все действия имеют одинаковый цвет фона, - это создать тему для ваших действий. Эта тема будет указывать на Android: WindowBackground.

Сначала определите цвет в values / colors.xml

<resources>
    <color name="background">#FF0000 </color>
</resources>

Создайте файл themes.xml в res / values, который ссылается на этот цвет:

<resources>
 <style name="MyTheme" parent="@android:style/Theme.Light"> 
  <item name="android:windowBackground">@color/background</item>
 </style>
</resources>

... а затем в вашем AndroidManifest.xml укажите это как тему для ваших действий.

 <activity
        android:name=".MyActivity"
        android:theme="@style/MyTheme" />
Я получил ошибку при реализации этого кода в themes.xml, так как он не распознает шестнадцатеричный код цвета здесь: & lt; item name = & android: windowBackground & quot; & gt; # FF0000 & lt; / item & gt;
это не правильный ответ. исправьте свой ответ, чтобы он соответствовал комментарию Криса NPike
просто поместите шестнадцатеричный цвет в ресурс @color, а затем на него сделайте ссылку & lt; item name = "android: windowBackground & quot; & gt; @ color / my_background & lt; / item & gt;
20

у нее есть встроенный редактор тем. как вы можете видеть на изображении ниже

enter image description here

Откройте файл styles.xml, и вы увидите, что в тексте редактора в правом верхнем углу нажмите на него.
Чтобы открыть его, перейдите в Инструменты - & gt; Android - & gt; Редактор тем.
Но мой случай скрыть и проблему решить, когда перезапустить Android Studio Спасибо, покажи Mach
как открыть тему Editir в версии для Android 2.1 Preview

Похожие вопросы