Проблема с использованием sharedPreferences между двумя действиями - PullRequest
1 голос
/ 31 января 2012

Я пытаюсь сохранить дату в одном действии, а затем поместить эту дату в текстовое представление в другом занятии.Я не уверен, как заставить эти два действия общаться друг с другом.В файле с именем report.java у меня есть этот метод, который получает дату и сохраняет ее в sharedPrefernces.

private void updateLabel() {
    date.setText(fmtDate.format(dateAndTime.getTime()));
    SharedPreferences preferences = getPreferences(MODE_PRIVATE);
    SharedPreferences.Editor editor = preferences.edit();
    editor.putString("date", date.getText().toString()); // value to store
    editor.commit();
}

Я пытаюсь выяснить, как получить мой файл, называемый проверкой, для заполнения textView. ПроблемаЯ думаю, что у меня есть с получением правильного имени для файла отчета.

public static final String PREF_FILE_NAME = "report";
   SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

тогда у меня есть этот код на метод, называемый onResume ()

    @Override
public void onResume() {
    super.onResume();
    SharedPreferences preferences = getPreferences(MODE_PRIVATE);
    String strDate=preferences.getString("date", date.getText().toString());

    date.setText(strDate);

}

Ответы [ 2 ]

2 голосов
/ 01 февраля 2012

Вы сохраняете значение в двух отдельных файлах настроек.

SharedPreferences preferences = getPreferences(MODE_PRIVATE);

SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

Используйте только один.

1 голос
/ 31 августа 2013

Почему бы не использовать файл настроек по умолчанию, который доступен всем классам / действиям вашего приложения?

SharedPreferences preference = PreferenceManager.getDefaultSharedPreferences(yourContext);
preferences.edit().putString(YOURKEY, yourStrValue);

Таким образом, вы не создаете дополнительные файлы настроек в своем приложении, которые вы должны помнить, какие значения хранятся в каких файлах. Определенно облегчает жизнь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...