0
I am working with ActionBar menuitem action-help, it is visible always in     UPPERCASE latters but I needs to show in LOWERCASE latters.

有很多关于操作栏样式的问题,但我发现的问题要么与 MenuItems 文本的样式有关,要么有对我不起作用的答案。

这个问题真的很简单。我希望能够更改操作栏中菜单项的文本样式(甚至只是颜色或小写)。

我读过这个:http ://android-developers.blogspot.com/2011/04/customizing-action-bar.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+blogspot%2FhsDu+%28Android+Developers+Blog% 29

还有这个问题:Style an Action Bar in Android

我从中整理了一个测试应用程序,我用它来尝试更改菜单项。它使用在 android studio android 插件中创建的应用程序的所有默认值,以下除外。

my v21\styles.xml look like
here is the code used for my AppTheme (make styles) used..


my Base Theme 

<style name="AppTheme" parent="@style/Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="android:colorPrimaryDark" tools:targetApi="lollipop">@color/colorPrimaryDark</item>
    <item name="android:colorAccent" tools:targetApi="lollipop">@color/colorAccent</item>
    <item name="android:colorBackground">@color/background_material_light</item>
    <item name="android:windowBackground">@color/windowBackground</item>

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

<style name="MyMenuTextAppearance" parent="android:TextAppearance.Holo.Widget.ActionBar.Menu">
    <item name="android:textAllCaps">false</item>
</style>


<style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
    <item name="android:titleTextStyle">@style/MyActionBar.TitleTextStyle</item>
    <item name="android:actionMenuTextAppearance">@style/MyActionBar.MenuTextStyle</item>
</style>

<style name="MyActionBar.TitleTextStyle"
    parent="android:style/TextAppearance.Holo.Widget.ActionBar.Title">
    <item name="android:textColor">#F0F</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textSize">24dip</item>
</style>

<style name="MyActionBar.MenuTextStyle"
    parent="android:style/TextAppearance.Holo.Widget.ActionBar.Menu">
    <item name="android:textColor">#F0F</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textSize">24dip</item>

</style>

4

1 回答 1

1

我找到了这个问题的正确答案,它也对所有人都有帮助

需要更改样式我在父级中创建了一种 actionmenuTextApperance 样式,用于在 Api21 中进行样式设置,但它在 Api 19 中不起作用,因此我实现了一个代码行,即如下所示的 false mystyle............

<resources>>
<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>

<--对于 api 21 及更高版本,请使用以下样式-->

    <item name="actionMenuTextAppearance">@style/MyMenuTextAppearance</item>
</style>

<--下面的行需要更改 api 19 和更低的 api-->

 <bool name="abc_config_actionMenuItemAllCaps">false</bool>

<style name="MyMenuTextAppearance" parent="TextAppearance.AppCompat.Widget.ActionBar.Menu">
    <item name="android:textAllCaps">false</item>
</style>

it will work deffinetly for all guys they struggling with this problem..
于 2016-01-14T09:35:33.380 回答