Цвет текста счетчика навигации Android Actionbar

Я могу изменить фон навигационного счетчика:

  <style name="MyTheme" parent="android:style/Theme.Light">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <item name="android:actionDropDownStyle">@style/MyDropDownNav</item>
    </style>

  <style name="MyDropDownNav" parent="android:style/Widget.Spinner">
        <item name="android:background">@drawable/spinner_white</item>
        <item name="android:textColor">@color/red</item>
    </style>

Тем не менее textColor не меняется. Я также пробовал другие способы изменить textColor:

 <style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
        <item name="android:background">?color_actionbar</item>
        <item name="android:titleTextStyle">@style/myTheme.ActionBar.Text</item>
    </style>

  <style name="myTheme.ActionBar.Text" parent="@android:style/TextAppearance">
        <item name="android:textColor">@color/violet</item>
    </style>

Любая другая идея?


person Anthea    schedule 12.09.2012    source источник


Ответы (1)


Я искал тот же ответ, но ничего не нашел, поэтому попробовал это решение. Я работаю на меня по крайней мере.

В файле темы вы можете установить стиль для spinnerDropdownItemStyle:

<style name="YourTheme" parent="YourParentTheme">
    <item name="android:spinnerDropDownItemStyle">@style/YourCustomDropDownItemStyle</item>
</style>

Теперь установите внешний вид текста для вашего стиля:

<style name="YourCustomDropDownItemStyle" parent="@android:style/Widget.Holo.DropDownItem.Spinner">
    <item name="android:textAppearance">@style/YourCustomDropDownItemTextStyle</item>
</style>

И в вашем пользовательском текстовом виде вы можете установить детали текста:

<style name="YourCustomDropDownItemTextStyle" parent="@android:style/Widget">
    <item name="android:textColor">@color/white</item>
    <!-- Here you can set the color and other text attributes -->
</style>

Надеюсь это поможет!

person giorgiline    schedule 19.09.2012
comment
Не найден ресурс, соответствующий данному имени «Виджет». - person Mike6679; 06.02.2013
comment
@Mike Если вы используете панель действий Sherlok, используйте parent="TextAppearance.Sherlock.Widget.ActionBar.Title", если нет, это должно быть что-то похожее. - person giorgiline; 08.02.2013
comment
Он забыл добавить android: перед Widget - person Alex Semeniuk; 01.03.2013
comment
не могли бы вы уточнить, как его использовать? а как насчет этой родительской темы? - person Dr. aNdRO; 30.09.2013
comment
У меня есть эта ошибка.. Не найден ресурс, соответствующий данному имени (в «android: textColor» со значением «@color/white»). - person ErenRavenHeart; 02.12.2014
comment
Цвет текста у меня не меняется. - person Pink Jazz; 24.01.2017