如何在应用程序中更改默认语言-Android Studio

时间:2019-11-17 00:44:11

标签: android android-studio

我一直在使用App。在我安装之前,一切看起来都不错。其默认语言设置为阿拉伯语。尽管可以从下拉菜单中更改语言,但是对于将要使用它的人来说,这并不酷。请帮助我以编程方式将默认语言设置为英语。

谢谢! :)

1 个答案:

答案 0 :(得分:1)

您可以将应用的语言环境设置为所需的语言环境-但是,如果您想自动设置它,则必须从某个来源获取它(对于此示例,您可以从设备的语言环境中获取它)

这是获取当前语言环境的方法

Locale getCurrentLocale(Context context){
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N){
            return context.getResources().getConfiguration().getLocales().get(0);
        } else{
            //noinspection deprecation
            return context.getResources().getConfiguration().locale;
        }
    }

这是将其设置为默认值的方法。

private static Context updateResources(Context context, String language) {
        Locale locale = new Locale(language);
        Locale.setDefault(locale);

        Resources res = context.getResources();
        Configuration config = new Configuration(res.getConfiguration());
        if (Build.VERSION.SDK_INT >= 17) {
            config.setLocale(locale);
            context = context.createConfigurationContext(config);
        } else {
            config.locale = locale;
            res.updateConfiguration(config, res.getDisplayMetrics());
        }
        return context;
    }