Java 如何更改操作栏的字体';s选项菜单项标题?

Java 如何更改操作栏的字体';s选项菜单项标题?,java,android,fonts,Java,Android,Fonts,我试图更改菜单项的字体样式,所以我想将菜单项的字体样式设置为“世纪哥特式” 下面是我的代码 menu.xml <item android:id="@+id/option_menu_item_1" android:orderInCategory="1"`enter code here` android:title="option_menu_item_1" app:showAsAction="never" />

我试图更改菜单项的字体样式,所以我想将菜单项的字体样式设置为“世纪哥特式”

下面是我的代码

menu.xml

 <item
        android:id="@+id/option_menu_item_1"
        android:orderInCategory="1"`enter code here`
        android:title="option_menu_item_1"
        app:showAsAction="never" />

    <item
        android:id="@+id/option_menu_item_2"
        android:orderInCategory="2"
        android:title="option_menu_item_2"
        app:showAsAction="never" />

    <item
        android:id="@+id/option_menu_item_3"
        android:orderInCategory="3"
        android:title="option_menu_item_3"
        app:showAsAction="never" />
</menu>
<resources>
    <color name="colorPrimary">#3F51B5</color>
    <color name="colorPrimaryDark">#303F9F</color>
    <color name="colorAccent">#FF00FF</color>
    <color name="skyBlue">#FF0000</color>
</resources>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

        <item name="android:itemBackground">@color/skyBlue</item>
        <item name="android:textStyle">bold</item>
    </style>

</resources>
color.xml

 <item
        android:id="@+id/option_menu_item_1"
        android:orderInCategory="1"`enter code here`
        android:title="option_menu_item_1"
        app:showAsAction="never" />

    <item
        android:id="@+id/option_menu_item_2"
        android:orderInCategory="2"
        android:title="option_menu_item_2"
        app:showAsAction="never" />

    <item
        android:id="@+id/option_menu_item_3"
        android:orderInCategory="3"
        android:title="option_menu_item_3"
        app:showAsAction="never" />
</menu>
<resources>
    <color name="colorPrimary">#3F51B5</color>
    <color name="colorPrimaryDark">#303F9F</color>
    <color name="colorAccent">#FF00FF</color>
    <color name="skyBlue">#FF0000</color>
</resources>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

        <item name="android:itemBackground">@color/skyBlue</item>
        <item name="android:textStyle">bold</item>
    </style>

</resources>

#3F51B5
#303F9F
#FF00FF
#FF0000
styles.xml

 <item
        android:id="@+id/option_menu_item_1"
        android:orderInCategory="1"`enter code here`
        android:title="option_menu_item_1"
        app:showAsAction="never" />

    <item
        android:id="@+id/option_menu_item_2"
        android:orderInCategory="2"
        android:title="option_menu_item_2"
        app:showAsAction="never" />

    <item
        android:id="@+id/option_menu_item_3"
        android:orderInCategory="3"
        android:title="option_menu_item_3"
        app:showAsAction="never" />
</menu>
<resources>
    <color name="colorPrimary">#3F51B5</color>
    <color name="colorPrimaryDark">#303F9F</color>
    <color name="colorAccent">#FF00FF</color>
    <color name="skyBlue">#FF0000</color>
</resources>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

        <item name="android:itemBackground">@color/skyBlue</item>
        <item name="android:textStyle">bold</item>
    </style>

</resources>

@颜色/天蓝色
大胆的
我得到的输出如下图所示

输出


但是我想使用哥特式.ttf资产文件字体将菜单项标题字体更改为(世纪哥特式)。

样式.xml中添加以下代码

<item name="android:actionMenuTextAppearance">@style/MyActionBar.MenuTextStyle</item>
@style/MyActionBar.MenuTextStyle
因此styles.xml如下所示

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

    <item name="android:itemBackground">@color/skyBlue</item>
    <item name="android:textStyle">bold</item>
   <item name="android:actionMenuTextAppearance">@style/MyActionBar.MenuTextStyle</item>
</style>

<style name="MyActionBar.MenuTextStyle" parent="Theme.AppCompat">
    <item name="actionMenuTextColor">@color/white</item>
   <item name="android:actionMenuTextColor">@color/white</item>

</style>


@颜色/天蓝色
大胆的
@style/MyActionBar.MenuTextStyle
@颜色/白色
@颜色/白色

然后为
MyActionBar.MenuTextStyle
创建样式,并根据需要更改
TextView
属性

注意:您只能通过
Java代码
使用
自定义字体
,而不能通过 布局
XML
样式/主题


有关更多详细信息,请访问:

style.xml中添加以下代码

<item name="android:actionMenuTextAppearance">@style/MyActionBar.MenuTextStyle</item>
@style/MyActionBar.MenuTextStyle
因此styles.xml如下所示

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

    <item name="android:itemBackground">@color/skyBlue</item>
    <item name="android:textStyle">bold</item>
   <item name="android:actionMenuTextAppearance">@style/MyActionBar.MenuTextStyle</item>
</style>

<style name="MyActionBar.MenuTextStyle" parent="Theme.AppCompat">
    <item name="actionMenuTextColor">@color/white</item>
   <item name="android:actionMenuTextColor">@color/white</item>

</style>


@颜色/天蓝色
大胆的
@style/MyActionBar.MenuTextStyle
@颜色/白色
@颜色/白色

然后为
MyActionBar.MenuTextStyle
创建样式,并根据需要更改
TextView
属性

注意:您只能通过
Java代码
使用
自定义字体
,而不能通过 布局
XML
样式/主题


有关更多详细信息,请访问:

但是我可以设置哥特式字体吗style@MadhushriM您必须下载
gothic font.ttf
文件并将其添加到
assets
文件夹中,然后使用它。是的,我已下载并保存在assets文件夹中……但是如何在Style.xml中使用该文件呢re@MadhushriM您不能在中更改
TextFont
style
查看我的更新答案。好的……那么如何在menu.xml中调用MainActivity.java bcz中的菜单标题不是Textview,只是标题,但我可以设置哥特式字体吗style@MadhushriM您必须下载
gothic font.ttf
文件并将其添加到
assets
文件夹中,然后使用它。是的,我已下载并保存在assets文件夹中……但是如何在Style.xml中使用该文件呢re@MadhushriM您不能在
style
中更改
TextFont
,请参见我的更新答案。好的……那么如何在menu.xml中调用MainActivity.java bcz中的菜单标题它不是Textview,只是标题