1

我想让我的应用程序多语言,我为它们使用了两个文件夹,第一个是文件夹values内的默认res文件夹,第二个是文件夹values-ar内的res文件夹。当语言是英语时,一切都很完美。

现在,我想将其更改为arabic. 我使用了这段代码:

Locale locale = new Locale("ar");
    Locale.setDefault(locale);
    android.content.res.Configuration config = new android.content.res.Configuration();
    config.locale = locale;
    getBaseContext().getResources().updateConfiguration(config,
            getBaseContext().getResources().getDisplayMetrics());

当我使用该代码时,应用程序的指令cutpaste更改一样,但我不知道谁告诉应用程序使用文件夹中的变量values-ar,而不是values文件夹中的变量。

请不要担心编码

提前致谢

4

1 回答 1

2

您可以获取当前语言并设置 if 条件。

String currentLang = Locale.getDefault().getDisplayLanguage();

if(currentLang == "english"){
      //TODO
 }else if(currentLang == "yourLang"){
     //TODO
 }

希望你会发现这很有用。干杯

于 2013-07-15T09:19:36.137 回答