在我的应用中,用户可以将其应用区域设置切换为其他应用支持的语言之一。我遇到了让葡萄牙语 - 巴西语和简体中文工作的问题。当用户更改区域设置时,所有其他翻译都能正常工作。
如果设备区域设置是pt-rBR或zh-rCN,这些翻译可以正常工作,所以唯一可能出错的是我使用的区域设置代码。但是,我尝试过的任何事情都失败了。有人知道这些适当的Android语言环境代码,这样用户可以根据需要正确切换吗?
答案 0 :(得分:5)
使用以下代码为传统和简体中文工作。
if(selectedLanguage.equals("zh_CN"))
locale = Locale.SIMPLIFIED_CHINESE;
else if(selectedLanguage.equals("zh_TW"))
locale = Locale.TRADITIONAL_CHINESE;
else
locale = new Locale(selectedLanguage);
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
baseContext.getResources().updateConfiguration(config, baseContext.getResources().getDisplayMetrics());
答案 1 :(得分:5)
使用
new Locale("pt","BR");
而不是
new Locale("pt_BR");