Перезагрузить SharedPreferences по резюме?(или как обновить / перезагрузить активность) - PullRequest
3 голосов
/ 19 марта 2011

Как я могу перезагрузить SharedPreferences, когда я возобновляю от одного действия до другого? Если я возобновлю, возможно, пользователь изменил настройки. Можно ли перезагрузить SharedPreferences или мне нужно обновить / перезагрузить активность. А если, то как?

1 Ответ

3 голосов
/ 19 марта 2011

Нет никакой разницы в том, как вы получаете и устанавливаете SharedPreferences в обычном режиме и в onResume. В дополнение к получению самых последних настроек вам нужно будет обновить все объекты, которые есть в Activity, в которых используются значения предпочтений. Это обеспечит работу вашего Activity с самыми последними значениями.

Простой пример:

protected void onResume() {
    super.onResume();
        getPrefs();

    //...Now update your objects with preference values         
}

private void getPrefs() {
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
    String myPref = prefs.getString("myPref", "");
}
...