2014-04-28 87 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