Android sharedpreferences употреба, за да запаметите настройките, suvitruf
За повечето приложения, което искате да запазите настройките, които контролират поведението на програмата. Android осигурява редица алтернативни начини за съхраняване на приложения за данни, всяка от които
оптимизирана за специфични нужди.
Общи настройки - просто и лесно механизъм на базата на двойки от "ключ - стойност" и има за цел да се запазят примитивни данни за кандидатстване, често персонализирани настройки.
SharedPreferences клас ви позволява да създадете в прилагането на име асоциативни масиви, като "ключ - стойност", които могат да бъдат използвани от различните компоненти на приложението (по време на работа
в контекста на едно и също приложение).
Общи настройки подкрепят базови типа булев, низ, поплавък, дълга и число, което ги прави идеални за бърз спаси стойностите по подразбиране, променливи, клас например, текущото състояние на потребителския интерфейс и потребителски настройки.
Създаване и запазване на настройките
, Трябва да се обадите на метод за създаване или модифициране Общи настройки
getSharedPreferences в контекста на прилагането, преминаващи общо наименование за настройките, които искате да промените. Настройките не са достъпни за други приложения.
Първи общите настройки
Необходимо е да се премине в името на getSharedPreferences общите настройки, достъпът до които искате да получавате, и да използва метод от напечатан получи. за извличане на запаметените стойности. Прехвърлени ключ по подразбиране и стойността (в случая на използване още не е запазена никаква стойност за този ключ).
стойности за почистване / отстраняване
За почистване стойности се използват методи SharedPreferences.Editor.remove (String ключ) и SharedPreferences.Editor.clear ().
Файлът с настройки се съхраняват в /data/data/package_name/shared_prefs/imya_fayla_nastroek.xml. Можете да изтриете:
Предпочитания Рамковата
В примерите по-горе обикновено спасяването и възстановяването на съответните параметри. Това означава, че тя създава марка на XML-файлове и поставени там необходимият контрол. Но Android за тази цел предлага на своите собствени предпочитания рамка, с която можете да създадете персонализиран набор от предпочитания и ще ги включи в заявлението.
Това означава, че не е необходимо да се създаде оформление файл и да получите / зададени параметри, за да се пишат. Необходимо е само в отделни опции за трансфер на файлове, както и Android вече ще свърши останалото. Предпочитание - това е отделна дейност в приложението, от активен. Самата дейност се простира от PreferenceActivity клас. Предпочитания се определят в отделен XML-файл, в който главната елемент е елемент
PreferenceScreen
Необходимо е да се създаде първоначално ресурси на папките RES / XML / XML-файлове, като например, settings.xml. Изберете типа на Android XML файл.
При създаване на файл, за да зададете ключа в диалоговия прозорец Предпочитания и се уверете, че основния елемент на файла инсталиран PreferenceScreen.
settings.xml
Следваща Asking необходимите настройки:
Ние идентифицирахме две възможности: размера на текста, езикови на заявлението. C
Определяне на параметри в string.xml и array.xml
Естествено, че е необходимо да се определи всички променливи. В string.xml.
PreferenceActivity
За PreferenceActivity създадени автоматично SettingsActivity. Ние бяхме там малко необходимо да се променя метода onCreate.
addPreferencesFromResource () метод чете определената конфигурация на XML-файл, който съхранява нашите ресурси и да ги предоставят за програмата. В резултат на това, ние трябва да видите настройките на екрана. Ако автоматичната ни дейност не е регистрирано, след което добавете манифест AndroidManifest.xml:
Така напишете кода, така че, когато кликнете върху менюто, отвори прозореца ни за настройките. За това ние определяме метод за създаване на менюта и onCreateOptionsMenu и метод за проследяване на кликванията върху onOptionsItemSelected меню.
За да запазите предпочитанията да избирате има 4 класа:
- CheckBoxPreference
- EditTextPreference
- ListPreference
- RingtonePreference
По-конкретно, в този пример се използва EditTextPreference и ListPreference.
Ето настройките на прозореца на климата:
проследяване на промените в общите настройки
OnSharedPreferenceChangeListener клас дава възможност да се свържете с обаждане-метод по време на добавянето, отпадането или промяна на специфични обществени настройки. С помощта на този процесор, компонентите на приложението ви може да следи промените в настройките, определени от потребителя, както и актуализиране на потребителския интерфейс или променят поведението на програмата.
Тази функция не е от значение за една модерна база фрагмент PreferenceActivity
Тази функция не е от значение за една модерна база фрагмент PreferenceActivity. Надува даден XML ресурс и добавя йерархията предпочитание към текущата предпочитания йерархия.
Такова съобщение, ще видите SDK в продължение на много методи PreferenceActivity. в същото addPreferencesFromResource. Това означава, че методите остаряла. Всъщност, нищо фатално за това, само в по-късните версии са по-удобни методи.
С версия 3.0, имаше т.нар Фрагменти. с които можете да работите с настройките.
Повтарям, ако имате по-стара версия за работа с настройките, използвани, след което тя ще работи на всички устройства нормално. Но ако пишете за версия на Android устройства 3+, по-добре е да се използват фрагменти.