it-swarm.com.ru

Цвет текста пункта меню «Панель действий»

Как изменить цвет текста заголовка пункта меню. Я пытался изменить это, как показано ниже

<style name="Theme.Kanku.ActionBar.TitleTextStyle" parent="@Android:style/TextAppearance.Holo.Widget.ActionBar.Title">
    <item name="Android:textColor">@color/white</item>
</style>

Но он меняет цвет только текста заголовка панели действий, но не текста пункта меню.

51
Procurares

Попробуйте что-то вроде этого:

<style name="ThemeName" parent="@style/Theme.Sherlock.Light">
    <item name="actionMenuTextColor">@color/white</item>
    <item name="Android:actionMenuTextColor">@color/white</item>
</style>
108
Deimantas Brandišauskas

Я пробовал несколько вещей, но у меня ничего не получалось. Наконец это добилось цели:

<style name="your_theme" parent="your_parent">
    <item name="Android:itemTextAppearance">@style/TextAppearance</item>
</style>

<style name="TextAppearance">
    <item name="Android:textColor">@Android:color/black</item>
</style>

Я не использовал темы Шерлока. Это сработало для Holo.Light.DarkActionBar.

101
b00n12

Попробовав все это и сделав так, чтобы они не работали, я сделал это программно так:

public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.changeip_card_menu, menu); 
    for(int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.getItem(i);
        SpannableString spanString = new SpannableString(menu.getItem(i).getTitle().toString());
        spanString.setSpan(new ForegroundColorSpan(Color.WHITE), 0, spanString.length(), 0); //fix the color to white
        item.setTitle(spanString);
    }
    return true;
}

Это будет работать динамически каждый раз. В этом случае цвет текста меняется на белый. Просто измените Color.WHITE на Color.wh независимо от того, какой цвет вы хотите изменить, на любой другой, какой вы хотите.

13
Alex K

Для обновления цвета текста пункта меню необходимо внести изменения в themes.xml. Следующий ответ для sherlock.actionbar. В вашем файле themes.xml добавьте следующие строки:

<style name="Theme.Mytheme" parent="@style/Theme.Sherlock">
    <item name="actionMenuTextColor">@color/mycolor</item>     
    <item name="Android:actionMenuTextColor">@color/mycolor</item>
</style> 
7
Vikas

это сработало для меня:

<style name="AppBaseTheme" parent="Android:Theme.Holo.Light.DarkActionBar">
    <item name="Android:textAppearanceLargePopupMenu">@style/MyOverflowItemCollor</item>       
</style>

<style name="MyOverflowItemCollor" parent="Android:TextAppearance.Holo.Widget.PopupMenu.Large">
    <item name="Android:textColor">#ffffff</item>
</style> 
5
kajlaminog

Если AppTheme является Android: Theme.Holo.Light.DarkActionBar, то вам нужно установить собственный actionBarWidgetTheme, чтобы изменить стиль меню действий. Как это:

<style name="AppTheme" parent="Android:Theme.Holo.Light.DarkActionBar">
    <item name="Android:actionBarWidgetTheme">@style/ActionBarWidget</item>
    <item name="Android:actionMenuTextColor">@color/{custom_menu_item_text_color}</item>
</style>

<style name="MenuItemText">
    <item name="Android:textColor">@color/{custom_menu_item_text_color}</item>
</style>

<style name="ActionBarWidget" parent="@Android:style/Theme.Holo">
    <item name="Android:itemTextAppearance">@style/MenuItemText</item>
</style>
4
Alexander Zhak

пожалуйста, используйте приведенный ниже код, он работает

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->

    <item name="colorPrimary">@color/colorWhite</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorPrimaryDark</item>
    <item name="Android:actionMenuTextColor">@color/colorWhite</item>
</style>
1
UpendranathReddy

Если вы используете DarkActionBar, добавьте две строчки в свой style.xml

  1. @ Цвет/зеленый
    1. @ Цвет/зеленый

Полный код приведен ниже

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>

    <item name="actionMenuTextColor">@color/green</item>
    <item name="Android:actionMenuTextColor">@color/green</item>
</style>
0
Divyaadz

вы можете изменить цвет элемента действия, просто следуя линии

<item name="Android:actionMenuTextColor">@color/selected_text_color</item>

вы можете подать заявку, как это.

<style name="your_theme" parent="your_parent">
<item name="Android:actionMenuTextColor">@color/selected_text_color</item>
</style>

В моем случае

<style name="MyTheme" parent="@Android:style/Theme.Holo.Light">
  <item name="Android:actionMenuTextColor">@color/selected_text_color</item>
  </style>
0
DjP

Добавьте следующую строку кода в ваш файл style. Xml, который меняет цвет текста меню параметров на черный:

 <style name="optionMenuTextApearance" parent="@Android:style/TextAppearance.Widget.IconMenu.Item">
    <item name="Android:textColor">@color/colorBlack</item>
</style>

Затем добавьте этот однострочный код в вашу тему, чтобы изменить цвет текста меню параметров:

        <item name="Android:itemTextAppearance">@style/optionMenuTextApearance</item>

Это работает для меня, спасибо.

0
AMI CHARADAVA