Android 实现语言切换
2017-04-09 本文已影响135人
Hi小胡
Android APP如果要实现语言(中英文为例)的切换该怎么做呢?
1. 在res文件下建立文件夹values-en,并且新建strings.xml文件
strings.xml文件内容对应如下:
-
values/strings.xml:
values/strings.xml -
values-en/strings.xml:
values-en/strings.xml
2. 实现语言切换的方法:
Configuration config = getResources().getConfiguration(); Resources resources = getResources(); if (config.locale.equals(Locale.ENGLISH)){//如果已经为英文 config.locale = Locale.CHINESE;//切换中文 }else if (config.locale.equals(Locale.CHINESE)){//如果已经为中文 config.locale = Locale.ENGLISH;//切换英文 } DisplayMetrics dm = resources.getDisplayMetrics(); resources.updateConfiguration(config, dm);
3. 在AndroidManifest.xml文件中对需要改变语言的Activity添加属性android:configChanges="locale"
AndroidManifest.xml
小提示:如果需要保存用户修改的语言以便下一次打开APP时改变语言,可以将用户选择的信息保存至SharedPreferences储存类或者数据库中,在打开时读取判断即可,这里不详细叙述