Я хочу изменить локаль в своем приложении для Android, поэтому я использовал следующий код:
Locale locale = new Locale('fr'); // or whatever
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
Но проблема в том, что в моих взглядах ничего не меняется. Как мне перезагрузить их, чтобы изменение локали стало видимым?
Редактировать: затрагиваются все представления: кнопки, текстовые представления, флажки. конечно, если я вручную устанавливаю текст для представления, то это работает, но я не хочу вызывать setText() для каждого виджета... Я знаю это, потому что имя пользователя отображается в представлении, и оно не обновлялось после выхода из системы. / войдите под другим пользователем. Поэтому я обновил текстовое представление вручную, но после того, как обнаружил, что проблема была одинаковой для всех представлений при изменении локали.