【发布时间】:2014-05-23 21:35:50
【问题描述】:
我已经用两种语言创建了一个应用程序。第二个(英语),当用户的默认系统语言是英语时使用。如果不是,则使用第一个。
我想将第二种语言(即英语)设置为默认语言, 这意味着当用户打开我的应用并且他的系统语言不是第一个,也不是英语时,英语将显示为默认语言。
我试过了:
Locale locale = new Locale("en_US");
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
context.getApplicationContext.getResources().updateConfiguration(config, null);
但每次都出现“无法解析上下文”错误..这段代码是对的还是..?
【问题讨论】:
-
您不需要这样做。当语言与提供的任何替代语言不匹配时,将使用您放入“基本”文件夹中的任何资源(例如值与值-es)。
-
它给出错误是因为你没有定义上下文变量,所以在你的第一个活动中你可以在 setContentView(), Locale locale = new Locale("en_US"); Locale.setDefault(locale);配置配置 = 新配置(); config.locale = 语言环境; getApplicationContext().getResources().updateConfiguration(config, null);这对我有用。