本地化Android应用程序,以便可以在应用程序内切换语言环境

问题描述

| 如何对应用程序进行本地化,以使其使用特定的语言环境,而不管设备上设置了哪种语言环境?我想让用户设置自己选择的语言成为可能。 到目前为止,我的Application类中有如下代码
@Override
public void onCreate()
{
    //Set locale
    String l = Preferences.getLocale(getApplicationContext());
    if (!l.equals(\"\"))
    {
        Locale locale = new Locale(l);
        Locale.setDefault(locale);
        Configuration config = getBaseContext().getResources().getConfiguration();
        config.locale = locale;
        getBaseContext().getResources().updateConfiguration(
            config,getBaseContext().getResources().getdisplayMetrics());
    }
    LogData.InsertMessage(getApplicationContext(),\"Application started\");
}
我遇到的问题是,我似乎在设置区域设置中显示得很好(TextViews) 但是菜单标题和吐司将变为认区域设置。 如何使它正常工作是否有1-2-3?我使用2.2版本     

解决方法

        这篇文章介绍了如何在应用中强制进行本地化。     ,        好的,我知道了为什么会有这个问题。.我需要在应用程序类中重写
onConfigurationChanged
。这比在每个
Activity
上指定语言环境要优雅得多。