来自微调器android的多语言应用程序

时间:2014-04-16 08:08:05

标签: android

我正在做多语言Android应用。我有一个微调器,可以从应用程序中选择不同语言的应用程序,并将所选语言保存在共享首选项中。我是新手,我已经看到没有Locale.SPANISH,我做得很好?,这是我的代码:

 Configuration config = new Configuration();
            switch (position) {
            case 0:
            Locale spanish = new Locale("es", "ES");
            savePreferences("idioma", spanish.toString());
             break;
            case 1:
             config.locale = Locale.FRENCH;
             savePreferences("idioma", config.locale.toString());
             break;
            case 2:
                 config.locale = Locale.ENGLISH;
                 savePreferences("idioma", config.locale.toString());
            break;
            default:

             break;

2 个答案:

答案 0 :(得分:0)

您可以在strings.xml的帮助下操作翻译,并且不需要自己处理区域设置。看看这个article at Android Developers

这就是你如何获得西班牙语语言环境:

Locale spanish = new Locale("es", "ES");

(见Localization Android

答案 1 :(得分:0)

要强制启用应用的区域设置,您可以在onCreate中使用此功能,或者当您按下按钮或需要更改应用的语言时使用此按钮:

Locale locale = new Locale("es", "ES");
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());

希望它有所帮助!

修改

您还需要为正确文件夹中存储的每个区域设置strings.xml(例如:values-es,values-en,values-fr等等)