Java 当系统语言更改时,不会应用字体

Java 当系统语言更改时,不会应用字体,java,android,fonts,Java,Android,Fonts,我希望我的应用程序支持不同的语言,现在我只添加了两种英语和俄语,因为我面临这个问题。我还在styles中为整个应用程序添加了一种字体: <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</i

我希望我的应用程序支持不同的语言,现在我只添加了两种英语和俄语,因为我面临这个问题。我还在styles中为整个应用程序添加了一种字体:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
       ...
       ...
    <item name="android:fontFamily">@font/finger_paint</item> // this line
</style>
由于我的手机语言通常为英语,使用英语我的应用程序运行良好,字体如下:

但当我把手机语言改成俄语时,奇怪的事情发生了:

该字体适用于数字,但不适用于俄语单词! 我尝试创建另一个可绘制的资源文件styles-ru.xml并在其中添加字体,但没有任何更改:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    ...
    <item name="android:fontFamily">@font/carter_one</item> // this line
</style>
“我的值”文件夹如下所示:


为什么会发生这种情况?我怎样才能解决这个问题?谢谢你的帮助

使用此库以编程方式将字体添加到应用程序中


问题不在于我。事实证明,这种字体根本不支持俄语字母。例如,当我将德语添加到我的项目中时,这种字体工作得非常好。

字体没有直接附加到语言上。如何附加它?不确定这是否完全可能,但这可能是一个很好的阅读主题:但字体没有任何意义。所以我不能将I字体应用于其他语言?