Я хочу, чтобы иметь возможность изменять настройки своего телефона одним нажатием кнопки в моем приложении. Если быть точным, я хотел бы изменить язык телефона. До сих пор я создал значения/строки и значения-IW/строки (ивр строки) и в течение нажатия кнопки я изменил конфигурацию следующим образом:Измените устройство Язык в моем приложении
if (myLocale != null) {
Locale.setDefault(myLocale);
Configuration config = new Configuration();
config.locale = myLocale;
getBaseContext().getResources().updateConfiguration(config,
getBaseContext().getResources().getDisplayMetrics());
}
Этот код изменяет локаль (я не уверен, что разница между языком и языком), но это не влияет на все мои действия. Таким образом, я попытался изменить настройки языка телефона прямо из своего приложения, но этого не удалось. У кого-нибудь есть идея, как я могу сделать этот код влияющим на все мои действия? Или вместо того, чтобы - как изменить язык телефона (отражение ??) ...
Чтобы сделать себе ясно - у меня есть активность А, который вызывает активность В (у меня есть много больше мероприятий, все с
андроида: launchMode = "singleInstance" в AndroidManifest). В деятельности B я изменил локали язык и вернулся к деятельности А по следующим направлениям:
final Intent intent2 = new Intent(this, MainActivity.class);
startActivity(intent2.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
finish();
изменение локаль не влияет на активность A (но влияет на все другие виды деятельности, среди которых деятельность В). Я предполагаю, что причина, по которой он не влияет на Activity A, заключается в том, что активность A все еще находится в стеке. Мне не удалось повлиять на Activity A при смене локали. У кого-нибудь есть идея, как повлиять также на активность А?
См. Http://stackoverflow.com/questions/9679574/android-is-there-any-way-to-change-the-default-language-of-android-to-new-lang –