#java #android #android_shared_preferences
Хочу, чтобы фрагмент, например, каждые 2 секунды сверял значение из SharedPreferences и выполнял определенное действие или как можно по другому реализовать ?
Ответы
Ответ 1
Чтобы контролировать изменения в SharedPreferences на него можно повесить слушатель. Слушатель будет срабатывать каждый раз, когда в экземпляр настроек, к которым он подключен будут вносится любые изменения: public class SomeFragment extends Fragment implements SharedPreferences.OnSharedPreferenceChangeListener { SharedPreferences prefs; .... prefs = PreferenceManager.getDefaultSharedPreferences(getActivity()); prefs.registerOnSharedPreferenceChangeListener(this); @Override public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { if (key.equals("some_key")) { // действия при изменении значения в ключе some_key } } } где some_key - определенный ключ в настройках (ячейка для сохранения значений) sharedPreferences - экземпляр настроек. Из него можно получить конкретное измененное значение. параметр переданный колбэком String key это тот ключ, в котором произошли изменения. Официальная документация по вопросу и рекомендации по использованию.Ответ 2
Может вам поможет OnSharedPreferenceChangeListener?
Комментариев нет:
Отправить комментарий