Установка белого цвета для темы приложения приводит к тому, что текст элемента контекстного меню становится белым (невидимым) - PullRequest
11 голосов
/ 22 апреля 2011

Хорошо, это сводит меня с ума. Чтобы сделать скин для моего приложения, я установил следующее в моей теме:

<item name="android:textColor">#FFFFFF</item>

Весь текст в приложении становится белым, если я не переопределю его вручную в макете xmls. Отлично, да, легко, peasy. За исключением того, что текст в опциях моего меню для контекстных меню (вне списков и т. Д.) Также решил стать белым.

Это не так здорово, так как трудно читать белое на белом. Я испробовал множество решений, включая поиск, как изменить цвет текста контекстного меню (без кубиков) и создание элемента textAppearance в моей теме. Последнее решение не изменило все текстовые поля в моем приложении, что было неприятно.

Итак, есть предложения? Надеюсь, моя дилемма ясна.

Ответы [ 2 ]

2 голосов
/ 09 июня 2012

В вашем файле styles.xml попробуйте переопределить textViewStyle вместо просто ALL textColor атрибутов:

<style name="Theme.Blundell.Light" parent="@android:style/Theme.NoTitleBar">
    <item name="android:windowBackground">@drawable/background_light</item>
    <item name="android:textViewStyle">@style/Widget.TextView.Black</item>
</style>

<style name="Widget.TextView.Black" parent="@android:style/Widget.TextView">
    <item name="android:textColor">#000000</item>
</style>

Вы можете даже сделать это еще одним и просто переопределить цвет для определенного вида, например, кнопки:

<style name="Widget.Holo.Button" parent="@android:style/Widget.Holo.Button">
    <item name="android:textColor">#FFFFFF</item>
</style>

<style name="Theme.Blundell" parent="@android:style/Theme.Holo.NoActionBar">
    <item name="android:colorBackground">@android:color/transparent</item>
    <item name="android:buttonStyle">@style/Widget.Holo.Button</item>
</style>

Если вы хотите сделать что-то еще, проверьте источник Android, это лучшее место, чтобы осознать, что вы можете и не можете делать:

https://github.com/android/platform_frameworks_base/tree/master/core/res/res/values

0 голосов
/ 03 февраля 2017

Используйте это:

parent="Theme.AppCompat.Light.DarkActionBar"
...