Android - 如何处理语言环境类

时间:2015-02-28 11:41:55

标签: android

在android我的要求是: - 当我的应用程序打开时,会有一个微调器。这个微调器会调用语言环境语言。用户可以从那里设置自己的语言。然后总应用程序(其他活动)将显示为用户的选择语言。

所以我的代码就像: -

String lang[] = locale.getISO3Language();

        ArrayAdapter<String> adapter =new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,lang);
        s1.setAdapter(adapter);

public void setLocale(String lang) {

        myLocale = new Locale(lang);
        Resources res = getResources();
        DisplayMetrics dm = res.getDisplayMetrics();
        Configuration conf = res.getConfiguration();
        conf.locale = myLocale;
        res.updateConfiguration(conf, dm);

    }

我是否正确?或者是否有另一种有效的方法????请建议我......

2 个答案:

答案 0 :(得分:0)

通常这不是必需的,因为应用程序在运行时确定使用哪种语言(用户在设备设置中选择的语言)。只需将您支持的每种语言的文件夹放入res /文件夹,然后在那里指定strings.xml文件。

默认文件位于文件夹值/(用于,例如,如果您不支持用户的语言)。只需添加一个名为values-es /的西班牙文件夹,为法语等的值-fr ....

西班牙语,/ values-es / strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Mi Aplicación</string>
    <string name="hello_world">Hola Mundo!</string>
</resources>

法语,/ values-fr / strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Mon Application</string>
    <string name="hello_world">Bonjour le monde !</string>
</resources>

请参阅Google教程:(那也是我偷了代码的地方; - ))

Supporting different Languages

答案 1 :(得分:0)