Мое приложение работает. и теперь моя проблема в том, что как я могу перенести его на sharedpreference? У меня есть achievement class
. первое достижение - «Играть в 1-ю игру», так что я делаю. Я устанавливаю логическое значение всякий раз, когда игрок нажимает на play button
, затем я назвал его в своем классе достижений, если его правда, то я делаю свой образ. (Видимо.) (View.VISIBLE). как я могу использовать sharedpreference для этого? Я смущен. и, пожалуйста, извиниласьBoolean Shared Preference
ответ
Получить PreferenceManager получить DefaultSharedPreferences
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
Золотое правило: использовать объект SharedPreference.Editor, чтобы иметь возможность написать в SharedPreference. Давайте получить его
SharedPreference.Editor editor = prefs.edit();
Помещенный в SharedPreferences нового булевыми
editor.putBoolean("ACHIEVEMENT_NAME", true);
и как только вы сделали фиксацию изменений.
editor.commit();
Последний шаг очень важен, иначе вы потеряете изменения.
Маленький дополнительно:
Если вы не хотите другой объект своими руками, и предпочитают другой подобный подход:
prefs.edit().putBoolean("ACHIEVMENT_NAME", true).commit();
prefs.edit().putBoolean("ACHIEVMENT_NAME_2", true).commit();
Таким образом, вы вынуждены совершить в каждой вставке значения, потому что нет объектов, которые обрабатывают вставки.
prefs.edit().putBoolean("ACHIEVMENT_NAME", true);
prefs.edit().putBoolean("ACHIEVMENT_NAME_2", true).commit();
Этот последний пример будет включать только ACHIEVMENT_NAME_2. Осторожно!
Чтобы получить логическое значение
boolean myBoolean = prefs.getBoolean(name, defaultValue);
теперь это: имя это строка, используется при установке значения (так в приведенных выше примерах, это либо ACHIEVMENT_NAME или ACHIEVMENT_NAME_2).
В случае, если ни одно значение с указанным именем не найден, метод getBoolean возвратит DefaultValue вы указали
Пример:
boolean myBoolean = prefs.getBoolean("ACHIEVMENT_NAME", false);
//ACHIEVMENT_NAME exists, myBoolean gets ACHIEVMENT_NAME's value
boolean myNotFoundBoolean = prefs.getBoolean("ACHIEVMENT_NAME_3", false);
//ACHIEVMENT_NAME_3 does NOT exists, myNotFoundBoolean is false
boolean lastBooleanExample = prefs.getBoolean("ACHIEVMENT_NAME_4", true);
//ACHIEVMENT_NAME_4 does NOT exists, lastBooleanExample is true
В некоторых других случаях вам может понадобиться, чтобы проверить, если определенное значение было а не проверять, какое значение хранится.
Например, возможно, вам нужно просто проверить, есть ли значение, называемое «GAME_COMPLETED», которое может быть даже значением, указывающим, сколько раз игра была завершена, но как только она будет завершена как минимум 1 раз, вы можете разблокировать новый игровой режим.
В этом случае вам просто нужно проверить, если префы имеет GAME_COMPLETED значение,
if (prefs.contains("GAME_COMPLETED")) {
...
}
много фантазии здесь, надеюсь, дал вам идею.
Чтобы очистить все предпочтения
editor.clear();
editor.commit();
время, чтобы удалить один определенный
editor.remove("GAME_COMPLETED");
editor.commit();
Больше (там больше Кажется, я объяснил почти все XD?) Здесь:
http://developer.android.com/reference/android/content/SharedPreferences.html
сэр мне нужно сделать xml-файл? – user3698267
Нет, XML-файл автоматически создается (и управляется) этими API-вызовами – FrancescoC
, как получить значение логического? – user3698267
- 1. Boolean Shared Preference не хранит
- 2. shared preference Boolean всегда возвращает false
- 3. Shared Preference Force close
- 4. Android Shared preference
- 5. Android SHared Preference?
- 6. Android Shared Preference - сбрасывает
- 7. Android Shared Preference Restarting App
- 8. Shared Preference сохранение флажка действие
- 9. Set Shared Preference Volley StringRequest
- 10. android shared preference get error
- 11. Shared Preference save Textview background
- 12. Android Shared Preference Full Screen не работает
- 13. Shared-preference всегда возвращает значение по умолчанию
- 14. Android Shared Preference TinyDB putListObject frunction
- 15. Android Shared Preference Объявление значения по умолчанию
- 16. Google gadget boolean preference не работает
- 17. Как сохранить объект массива в Shared Preference в Android
- 18. Android Shared Preference: Как получить значения из набора строк?
- 19. Android Shared Preference Все еще видно после удаления файла
- 20. Singleton Creation preference
- 21. Cant create Preference in Preference Категория
- 22. checkbox preference
- 23. android Preference
- 24. setcurrenttab from preference
- 25. ShowDialog onClick Preference
- 26. Android Shared Preference, как зарегистрировать пользователя, а затем войти в систему
- 27. Я использую Shared Preference, чтобы сохранить все данные приложения вместо DataBase, не так ли?
- 28. Android Shared preference change прослушиватель не работает даже с глобальным refernce слушателя
- 29. MySQL Preference Finder
- 30. Значения Android Preference странно
Google не работает для вас? Я нашел дубликат, перепечатывающий название вашего вопроса в Google ... – 2Dee
Возможный дубликат [Как сохранить логическое значение с помощью SharedPreferences в Android?] (Http://stackoverflow.com/questions/23919338/how-to-store -a-boolean-value-using-sharedpreferences-in-android) – 2Dee