首页 文章

更改区域设置不会更改字体样式

提问于
浏览
0

当用户选择新语言时,我使用this approach来设置语言环境 .

我也使用这样的样式字体:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">


    <item name="android:textAppearance">@style/Font.Default</item>

    </style>

values 文件夹中的“ EN ”样式:

<style name="Font.Default" parent="@android:style/TextAppearance.Small">
    <item name="android:fontFamily">@font/futuralt</item>
    <item name="fontFamily">@font/futuralt</item>
</style>

另一种语言"ar"(代表阿拉伯语)和 values-ar 文件夹中的 another font

<style name="Font.Default" parent="@android:style/TextAppearance.Small">
    <item name="android:fontFamily">@font/gesstwolight</item>
    <item name="fontFamily">@font/gesstwolight</item>
</style>

问题是当语言环境发生更改时,表示语言环境的字体未应用 Unless app restarts . 如何在设置区域设置后更改字体而不重新启动应用程序?

1 回答

  • 0

    更改区域设置后,您可以在某个位置调用recreate .

    yourActivity.this.recreate();
    

相关问题