0

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

我做了这个

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

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

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

我该怎么办?

我以这种方式更改了它,现在它可以工作了。

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

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

2 回答 2

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);
     }
于 2013-02-02T10:36:19.260 回答
2

字符串必须像这样组织:

res/values/strings.xml

res/values-it/strings.xml
于 2013-02-02T10:49:46.543 回答