当前位置: 首页 > 知识库问答 >
问题:

如何判断android中当前的系统语言?[重复]

戚成礼
2023-03-14

我有一些问题。我只是想知道,如何为当前使用的系统语言生成if-else语句?我有一个项目,当系统语言改变时,我需要使用不同的字体。所以我猜通过创建if-else语句可以解决这个问题。我的代码如下:

final Typeface en = Typeface.createFromAsset(getAssets(), "LCfont-en.ttf");
final Typeface ar = Typeface.createFromAsset(getAssets(), "LCfont-ar.ttf");
final Typeface cn = Typeface.createFromAsset(getAssets(), "LCfont-cn.ttf");
final Typeface tw = Typeface.createFromAsset(getAssets(), "LCfont-tw.ttf");
final Typeface th = Typeface.createFromAsset(getAssets(), "LCfont-th.ttf");

TextView text1 = (TextView) view.findViewById(R.id.TV);

text1.setTypeface(en);
text1.setTypeface(ar);
text1.setTypeface(cn);
text1.setTypeface(tw);
text1.setTypeface(th);

以上是代码,当系统语言改变时,我想使用不同的字体。任何帮助都非常感谢。谢谢!

共有1个答案

梁渊
2023-03-14

您可以使用这样的区域设置类来检索当前区域设置:

String localeCode = Locale.getDefault().getLanguage();
if ("en".equals(localCode)) {
    // ...
} else if ("es".equals(localCode)) {
    // ...
}

可供替代的

如果你只有少量的字体。您还可以在资源中定义资产字体名称,并通过配置覆盖它。例如,在值/字符串中。xml:

<string name="typeface_path">LCfont-en.ttf</string>

并在值-ar/strings.xml:

<string name="typeface_path">LCfont-ar.ttf</string>

和其他语言的等价物。然后在代码中,您可以使用:

final Typeface typeface = Typeface.createFromAsset(getAssets(), getString(R.string.typeface_path));
TextView text1 = (TextView) view.findViewById(R.id.TV);
text1.setTypeface(typeface);
 类似资料:
  • cmf_current_lang() 功能 判断当前的语言包,并返回语言包名 参数 无 返回 string 语言包名

  • cmf_current_lang() 功能 判断当前的语言包,并返回语言包名 参数 无 返回 string 语言包名

  • 本文向大家介绍php判断当前操作系统类型,包括了php判断当前操作系统类型的使用技巧和注意事项,需要的朋友参考一下 如何使用php获取当前操作系统类型呢?严格来说这里分两种情况,一种情况是获取服务器端的操作系统类型,一种是获取客户端的操作系统类型。下面作者将对如何使用php获取这两种情况下的操作系统类型和大家做一些分享。 (1)php获取服务器端的操作系统类型 这个时候可以使用php系统自带的常量

  • 引用脚本的内容: /*判断当前win操作系统版本 By:Ansifa*/ SetCompressor /SOLID lzma XPStyle on OutFile "判断当前win操作系统.EXE" Name "判断当前win操作系统" Section ReadRegStr $1 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "Curre

  • 本文向大家介绍php  PATH_SEPARATOR判断当前服务器系统类型实例,包括了php  PATH_SEPARATOR判断当前服务器系统类型实例的使用技巧和注意事项,需要的朋友参考一下 php中有一个非常有用的预定义常量PATH_SEPARATOR,我们可以通过该常量来判断当前服务器是linux还是Windows。本文将向大家讲解php使用PATH_SEPARATOR获取当前服务器的类型。

  • 系统语言 设定自家选单等的显示语言。 Deutsch 以德文显示 English 以英文显示 Español 以西班牙文显示 Français 以法文显示 Italiano 以意大利文显示 Nederlands 以荷兰文显示 Português 以葡萄牙文显示 Pyccкий 以俄文显示 以日文显示 以韩文显示 以简体中文显示 以繁体中文显示