2014-04-28 68 views
1

我有一个上下文操作模式,操作栏菜单的文本颜色应为红色。 我能够改变使用使用appcompat操作栏菜单字体颜色更改

<style name="AppTheme" parent="@style/Theme.AppCompat.Light"> 
    <!-- Setting values in the android namespace affects API levels 14+ --> 
    <item name="android:actionBarStyle">@style/MyStyledActionBar</item> 
</style> 

<style name="MyStyledActionBar" parent="@style/Widget.AppCompat.Light.ActionBar"> 
    <!-- Setting values in the android namespace affects API levels 14+ --> 
    <item name="android:background">@drawable/bg_action_bar</item> 
    <item name="android:titleTextStyle">@style/MyActionBarTitleText</item> 
    <item name="android:actionMenuTextAppearance">@style/MyActionBarMenuText</item> 
    <item name="android:actionMenuTextColor">@style/MyActionBarMenuText</item> 
    <item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverFlow</item> 
</style> 

<style name="MyActionBarTitleText" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"> 
    <item name="android:textColor">@color/font_half_white</item> 
</style> 

<style name="MyActionBarMenuText" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Menu"> 
    <item name="android:textColor">@color/font_half_white</item> 
</style> 

<style name="MyActionButtonOverFlow" parent="@style/Widget.AppCompat.Light.Base.ActionButton.Overflow"> 
    <item name="android:src">@drawable/ic_action_search</item> 
</style> 

它工作在Android 2.3的,4.1的文本颜色。但是当我在android 4.4中运行相同。它显示默认的黑色

任何人都可以请让我知道,这是什么问题。

在此先感谢。

+0

创建文件夹res/value-v14并添加style.xml并在那里修改 –

+0

@RahulGupta。是的,我也在那里添加了样式。并得到相同的问题 – user3463901

+0

更改[email protected]/Theme.AppCompat.Light到另一个在v14文件夹中,并检查它 –

回答

0

,请使用以下代码它的工作对我来说

,仍然,如果你有怀疑,它不是那么工作告诉我

<resources> 

<!-- 
    Base application theme for API 14+. This theme completely replaces 
    AppBaseTheme from BOTH res/values/styles.xml and 
    res/values-v11/styles.xml on API 14+ devices. 
--> 
<style name="AppTheme" parent="AppBaseTheme"> 

    <!-- <item name="windowBackground">@color/background_window</item> --> 
    <!-- <item name="android:actionBarStyle">@style/ActionBarStyle</item> --> 

    <item name="android:actionBarStyle">@style/MyActionBar</item> 
</style> 

<style name="MyActionBar" parent="@android:style/Widget.ActionBar"> 
    <item name="android:icon">@drawable/ic_launcher</item> 
    <item name="android:background">#FF666666</item> 
    <item name="android:titleTextStyle">@style/MyActionBarTitleText</item> 
</style> 

<style name="MyActionBarTitleText" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title"> 
    <item name="android:textColor">@android:color/holo_blue_bright</item> 
</style> 

+0

我试过一样,但仍然没有线索。感谢你的快速反应。 – user3463901

+0

只是复制上面的代码,并在style.xml中查看它会发生什么 –

+0

values-v14文件夹? – user3463901

1

也许这是不是这样做最彻底的方法但要改变我的行动栏文本的颜色,我使用类似于java类的HTML代码:

getSupportActionBar().setTitle(Html.fromHtml("<font color='#FF0000'>"+Your Title+"</font>")); 

希望它有帮助!

+0

它会更改操作栏菜单的文本颜色吗?上面这行只会改变我猜的标题颜色。如果我错了,请纠正我。 – user3463901

+0

您是对的...对于操作栏中的选项菜单,我在styles.xml中使用了'#FF6C10''。 – margabro