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

标签 android localization

我如何本地化应用程序,以便它使用特定的区域设置,而不管设备上设置的区域设置如何?我想让用户能够设置他们选择的语言。

到目前为止,我的应用程序类中有这样的代码:

@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) 但菜单标题和 toast 将使用默认语言环境。

是否有关于如何使其正常工作的任何 1-2-3?我用的是2.2版本

最佳答案

This post解释了如何在您的应用程序中强制本地化。

关于android - 本地化 Android 应用程序,以便我可以在应用程序内切换语言环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6180761/

相关文章:

Android Studio Gradle 构建错误 java.io.IOException Could not delete path

android - Kotlin for Android 中匿名类的重写方法

c# - 如何从资源的字符串名称获取资源的值

Android Media Player - 获取视频在 SetLooping 中播放的次数

java - 创建 fragment View 时崩溃

ios - 禁止 ios 通过本地化更改 GUI Controller 位置

git - 在哪里可以找到 Git 本地化的语言列表?

localization - app-localize-behavior 和共享本地化缓存

java - 语言更改在上传到 Google Play Store 之前有效,但在上传到 Play store 之后无效。为什么?

ios - 如何使用 Apple Localization Glossaries/AppleGlot 翻译 iPhone 应用程序中的基本术语?