我一直在使用App。在我安装之前,一切看起来都不错。其默认语言设置为阿拉伯语。尽管可以从下拉菜单中更改语言,但是对于将要使用它的人来说,这并不酷。请帮助我以编程方式将默认语言设置为英语。
谢谢! :)
答案 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;
}