每种语言的Android不同字体 [英] Android different font for each language

查看:465
本文介绍了每种语言的Android不同字体的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

反正每种语言都有不同的字体吗? 有values-en,values-fr ...等等,但是我们可以做些font-fr,font-ar ... etc这样的事情吗?

Is there anyway to make different font for each language? There is the values-en, values-fr ...etc, but can we do something like font-fr, font-ar ...etc?

PS,我在说的是res/font,而不是资产/字体,我希望能够以XML设置一种字体,然后获得每种语言的更改,而无需以编程方式设置Typeface.

PS, i'm talking about res/font, not about assets/fonts, i would like to be able to set one font in XML, and then get the changes with each language, without setting the Typeface programmatically.

推荐答案

尝试一下:

  1. 将所有字体文件添加到res/font
  2. 本地化style.xml(创建values/style.xml&& values-ln/style.xml)
  3. 每个style.xml添加中的
  4. AppTheme<item name="android:fontFamily">@font/your_desired_font</item>
  5. 仅此而已
  1. add all of your font files in res/font
  2. localize style.xml (create values/style.xml && values-ln/style.xml)
  3. in AppTheme for every style.xml add <item name="android:fontFamily">@font/your_desired_font</item>
  4. that's all

如果一种语言的字体不止一种(例如,常规字体,粗体字体,浅色字体等),则将其添加到每种style.xml中,例如:

if you have more than one font for a language (let's say regular, bold, light, etc.) then add it to each style.xml, example:

 <style name="FontLocalizedBold">
        <item name="android:fontFamily">@font/your_desired_font</item>
    </style>

用法:

<TextView
        android:id="@+id/textViewId"
        android:layout_width="100dp"
        android:layout_height="100dp"
        style="@style/FontLocalizedBold"
        android:gravity="center"
        tools:text="XX"/>

这篇关于每种语言的Android不同字体的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆