Сохранение и восстановление наборов настроек - PullRequest
0 голосов
/ 23 декабря 2010

Есть ли какие-нибудь приятные способы сохранить, а затем восстановить значения для группы предпочтений (т. Е. Хранящиеся с помощью SharedPreferences) в Android?

Для моего игрового приложения у меня есть около 10 предпочтений относительно того, как должна отображаться игра. Что я хотел бы сделать, это добавить различные профили, которые могут быть выбраны, где каждый профиль будет устанавливать значения 10 предпочтений. Например, у меня может быть профиль «низкого заряда батареи», в котором все настройки рендеринга будут установлены на значения, использующие наименьшее количество батареи, или профиль «высокой детализации», чтобы установить для всех предпочтений рендеринга самые высокие настройки.

У меня также будет несколько предпочтений, которые не установлены этими профилями. Например, у меня будет предпочтение, в котором хранится имя текущего активного профиля.

Какие у меня есть варианты сохранения / восстановления профилей? Как будет осуществляться изменение профилей?

1 Ответ

1 голос
/ 23 декабря 2010

ИМХО в принципе есть три способа достижения ваших целей:

  • Создать набор SharedPreferences - отдельно для каждого профиля, например:
    settingsCommon=context.getSharedPreferences("MyCommon", MODE_PRIVATE);
    settingsLowBattery=context.getSharedPreferences("MyLowBattery", MODE_PRIVATE);
  • Добавить к каждому ключу предпочтения что-то подобное суффикс, который будет указывать на профиль:
int getIntPreference(SharedPreferences settings, String profile, String key, int defValue)
{
    String fullKey=key+"."+profile;
    return settings.getInt(fullkey, defValue);
}
  • Расширить SharedPreferences класс и реализовать свой, в том числе создание / анализ любого вида XML
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...