MacLodge's Blogsince 2022
微信公众号二维码:程序小猴
微信公众号「程序小猴」
编码技术 · 学习经验 · 生活感悟
Android

APP界面语言跟随系统

首先在 res 目录下新建文件夹和 values 平级,名称如图所示,然后各在里面添加 strings.xml 文件,前面会显示国旗图标。

1. app 名称跟随系统语言

首先在 res 目录下新建文件夹和 values 平级,名称如图所示,然后各在里面添加 strings.xml 文件,前面会显示国旗图标。

20190426112453316

  • 英文 strings.xml 内容
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">test</string>
</resources>
  • 中文 strings.xml 内容
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">测试</string>
</resources>

这样在 AndroidManifest.xml 中引用 app_name 的时候,会自动选择语言。引用其他字符串也是同样,只要在 strings.xml 里面添加对应的标签和不同的语言字符就行。

2. 获取系统语言,加载不同布局

定义变量获取当前系统语言。

import java.util.Locale;
String locale_language = Locale.getDefault().getLanguage();      //获取当前系统语言;

根据语言,判断加载哪一个布局 (layout)

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if(locale_language == "zh")
        setContentView(R.layout.activity_test_cn);
    else if(locale_language == "en")
        setContentView(R.layout.activity_test_en);
}
署名-非商业性使用-相同方式共享 4.0 国际(CC BY-NC-SA 4.0)
本文可自由转载与修改,但需保留作者署名与出处链接,不得用于商业用途,且衍生作品需以相同方式共享。 转载请注明:MacLodge's Blog · APP界面语言跟随系统
留言 / 评论

评论由 GitHub Discussions 承载,登录 GitHub 账号即可发言;数据存在博客仓库里,不依赖第三方评论服务。

评论加载中…

Esc