XML android:fontFamily中的字体不适用于工具栏

mak*_*tar 5 fonts android toolbar android-support-library

我正在使用新的XML字体功能,这是在Android 8.0 Oreo和支持库26.1.0中引入的.通过android:fontFamily在应用程序主题中设置属性来应用整个应用程序的默认字体系列:

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
     ...
    <item name="android:fontFamily">@font/proxima_nova</item>
</style>
Run Code Online (Sandbox Code Playgroud)

该字体已正确应用于应用程序中除工具栏之外的所有视图.所有工具栏都使用Roboto字体:

在此输入图像描述

更新:问题似乎在支持库27.0.0中得到修复.我不能再复制它了.

小智 9

我尚未测试所有Android版本,但这似乎有效:

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
     ...
    <item name="android:fontFamily">@font/proxima_nova</item>
    <item name="toolbarStyle">@style/AppTheme.Toolbar</item>
</style>

<style name="AppTheme.Toolbar" parent="Widget.AppCompat.Toolbar">
    <item name="titleTextAppearance">@style/AppTheme.ToolbarTextStyle</item>
</style>

<style name="AppTheme.ToolbarTextStyle" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
    <item name="android:fontFamily">@font/proxima_nova</item>
    <item name="fontFamily">@font/proxima_nova</item>
</style>
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,这可能是一种解决方法,但最终的目标是让所有视图都设置风格,而无需手动样式.我在Google问题跟踪器中创建了一张票:https://issuetracker.google.com/issues/68308866. (2认同)