RadiationX
@RadiationX
Front-End разработчик

Как менять цвета в зависимости от темы?

Такая ситуация, в программе можно выбирать тему для программы(грубо говоря holo light(по умолчанию) или holo dark) , и , как я понял цвета, прописанные в colors.xml не могут меняться в зависимости от выбранной темы. В drawable допустим описывается фоновый цвет элемента, как его поменять, если выбран holo dark?
  • Вопрос задан
  • 2527 просмотров
Решения вопроса 1
@yanchumak
создаешь ссылки в attr.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<attr name="titleColor" format="reference|color" />
<attr name="introColor" format="reference|color" />
</resources>


Создаешь свои темы с родителем android:Theme или holo dark/light по желанию уже

<style name="AppTheme.MyDark" parent="android:Theme">
   <item name="titleColor">#FFFFFF</item>
   <item name="introColor">#FFFFFF</item>
</style>

<style name="AppTheme.MyLight" parent="android:Theme">
   <item name="titleColor">#000000</item>
   <item name="introColor">#004444</item>
</style

ну и в нужных вюхах

TextView
    android:id="@+id/quoteTitle"
    android:textColor="?titleColor"
    ...
</TextView>


пример dl.dropbox.com/u/3359186/android_blog/Themes.zip
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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