如何设置不同的语言

时间:2013-02-02 10:29:30

标签: android

如果用户的设备设置为意大利语,我希望我的应用程序使用strings.xml的意大利语版本,否则我希望我的应用程序使用带有英文文本的默认strings.xml。

我做了这个

res/values/strings.xml <--- english

res/values/values-it/strings.xml <--- italian //THIS WAS MY ERROR

根据Google指南http://developer.android.com/training/basics/supporting-devices/languages.html,我不需要做任何事情! Android将完成所有工作! 但是当我尝试在我的设备上运行应用程序(设置为意大利语)时,我的应用程序继续“说”英语。

我该怎么办?

我改变了这种方式,现在它有效。

res/values/strings.xml <--- english

res/values-it/strings.xml <--- italian

2 个答案:

答案 0 :(得分:2)

试试这个..

  String s = Locale.getDefault().getDisplayLanguage();
  if(s.equalsIgnoreCase("italiano"))
     {
        Resources res = getResources();
        Configuration newConfig = new Configuration(res.getConfiguration());
        newConfig.locale = new Locale("it", "IT");
        res.updateConfiguration(newConfig, null);
     }

答案 1 :(得分:2)

字符串必须像这样组织:

res/values/strings.xml

res/values-it/strings.xml