5
我创建了多语言(英语,俄语,乌兹别克语)应用程序。我把4个字符串资源放在4个文件夹中(值,values-en,values-ru,values-uz)为docs。当我更改应用程序语言的更新资源的开发配置应用程序控制器类似如下:使多语言Android应用程序
Settings.LANGUAGE = prefs.getString(User.LANG, Settings.RUSSIAN);
Locale locale = new Locale(Settings.LANGUAGE);
Locale.setDefault(locale);
Configuration configuration = new Configuration();
configuration.locale = locale;
getBaseContext().getResources().updateConfiguration(configuration,
getBaseContext().getResources().getDisplayMetrics());
该应用程序重新启动后,通过调用应用程序控制器的方法,象下面这样:
public void reStart() {
Intent i = getBaseContext().getPackageManager()
.getLaunchIntentForPackage(getBaseContext().getPackageName());
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
}
他们之后它运作良好,几乎所有的图谋。但在三星Galaxy S6(SM-G920F)上,它的工作原理非常疯狂。有些词语是英文的,其他词语是乌兹别克语和英语。 那么,如何解决这个错误?是不是支持所有设计(适用于)的“支持不同语言”的概念? 通过我已经检查了所有资源的开发都在相应的语言给出(如图附图片)的方式:
三星喜欢在那里做自己的事情....:我发现,他们并不总是遵循标准(几件事) –
不要更改设备语言时,而不是像编程你得到了同样的问题那? – DeeV
那我该怎么做? @NeilLocketz –