Android:APP界面跟随系统语言显示

1,328 阅读1分钟

一、app 名称跟随系统语言

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

英文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里面添加对应的标签和不同的语言字符就行。

二、获取系统语言,加载不同布局

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

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);