- Как получить общие настройки, сохраненные с предыдущая активность?
- Нужно ли включать запись файла или некоторые другие модификации манифеста?
Android Shared предпочтения с несколькими действиями
Ответ 1
Вам не нужен какой-либо специальный манифест для достижения этого.
Предполагая, что вы уже сохранили настройки, вы можете прочитать эти настройки в любое время, делая что-то подобное, как показано ниже.
-
Запись в файле общих настроек:
SharedPreferences prefs = getSharedPreferences("your_file_name", MODE_PRIVATE); SharedPreferences.Editor editor = prefs.edit(); editor.putString("yourStringName", "this_is_the_saved_value"); editor.commit(); // This line is IMPORTANT. If you miss this one its not gonna work!
-
Чтение из файла общих настроек:
SharedPreferences prefs = getSharedPreferences("your_file_name", MODE_PRIVATE); String string = prefs.getString("yourStringName", "default_value_here_if_string_is_missing");
Вы можете использовать файл по умолчанию для сохранения/чтения ваших настроек. Просто замените первую строку двух фрагментов кода выше: SharedPreferences prefs = getDefaultSharedPreferences(getApplicationContext());
Вот оно! Обратите внимание на выделенную страницу разработчиков Android, здесь.
Надеюсь, это было полезно. Сообщите мне об этом.
Ответ 2
Вам не нужно делать ничего особенного, кроме того, что оба действия записывают/читают из того же файла. Под капотом предпочтения просто сохраняются как XML файл.
Итак, ваши варианты:
1) Используйте PreferenceManager.getDefaultSharedPreferences() из обоих действий для записи в файл по умолчанию.
2) Используйте Context.getSharedPreferences(), указав имя настраиваемого файла, и используйте одно и то же имя из обоих видов деятельности.
Ответ 3
Общие настройки - это то, что доступно. Пока вы правильно сохраните настройки после их редактирования, вызвав команду Editor.commit(), они будут доступны в будущем.