Привет У меня возникла проблема с PreferencesFragment и сохранением настроек. Когда я меняю язык телефона в Android, сохраненные значения моих настроек все еще находятся на предыдущем языке и не заданы в PreferencesFragment. У меня разные папки значений для каждого языка. Что я могу сделать, чтобы исправить это?SharedPreferences и другие языки
ответ
Ну, так как вы хотите изменить значения настроек. Я не думаю, что это может быть сделано автоматически API. Вам нужно будет написать свой собственный код, чтобы установить значения предпочтений.
Вы можете сохранить значения, зависящие от языка, в каталогах values-xx
. Напр. строки, целые числа и т. д.
Когда кто-то меняет язык телефона, ваша деятельность перезапускается. Вы должны использовать это как возможность изменить значения предпочтений в onCreate
. Сначала сохраните текущий используемый язык, чтобы его можно было использовать для определения того, был ли язык изменен. Вы можете использовать Locale
, чтобы сделать это (Locale.getDefalt()
)
Теперь, если вы обнаружили изменения языка, просто получить значение от использования Resources
объекта путем вызова getResources()
и изменить все зависящее от языка значения предпочтений.
Я понятия не имею, как это сделать для ListPreference и MultiSelectListPreference – keysersoze
Почему вы сохраняете языковые зависимости в настройках? Вы должны использовать строки для отображения и сохранения в виде целых чисел. Вот почему для LisPreference есть два атрибута (entries, entryValues). Из целочисленного значения, которое сохраняется, вы можете получить преобразованную переведенную строку. –
Язык предпочтений в вашем приложении не зависит от вашего языка телефона. Если это зависит от вас, вы даже не нуждаетесь в нем в своем приложении, на первом месте. Вы должны сделать кодирование таким образом, чтобы у вас был Авто Язык, который зависит от языка телефона.
- 1. Phonegap и другие родные языки программирования
- 2. Значение $ в библиотеку JavaScript и другие языки
- 3. Иврит и другие языки в sql
- 4. Prolog vs Erlang (и другие функциональные языки)
- 5. datepicker перевод на другие языки
- 6. PHP Speed Vs Другие языки
- 7. другие языки во флеш-плеерах
- 8. Android редактировать другие пользовательские SharedPreferences
- 9. Определены Sitecore Языки, отображаемые в форме диалога «Другие языки»
- 10. JSON, JS на Java и наоборот, и другие языки
- 11. Изучив один язык, другие языки легче?
- 12. Существуют ли другие языки, похожие на XML?
- 13. Перевод php строк на другие языки
- 14. Какие другие языки программирования работают на PNaCl?
- 15. Перевод моей cocos2d игры на другие языки
- 16. Другие решения/языки, превосходящие ожидания TCL?
- 17. Интеграция языковых функций на другие языки
- 18. Как добавить другие языки в TeX
- 19. Перевести программу на другие языки программирования
- 20. R вывести выход t.test() на другие языки
- 21. Может ли SpeechRecognizer поддерживать другие языки?
- 22. joomla язык файл не загружается другие языки
- 23. Зачем нам нужны другие языки JVM
- 24. Преобразование изображения Текст на другие языки IPhone
- 25. Выберите другие языки для распознавания речи
- 26. Как сохранить другие языки в таблице mysql?
- 27. Вставьте другие языки в строку таблицы phpmyadmin
- 28. Поддерживает ли sIFR иврит и другие языки справа налево (rtl)?
- 29. TwitterApi json не принимает арабский и другие языки
- 30. Почему lisp не использует gensym и другие языки?
Пожалуйста, объясните вопрос более четко. Строки предпочтений не изменяются (например, название, сводка и т. Д.)? Или вы хотите автоматически изменить сохраненные значения настроек? –
Я хочу автоматически изменять сохраненные значения настроек. – keysersoze
Завершите и перезапустите функцию PreferenceActivity. –