1

Я хочу сохранить текущую дату в текстовом виде в моем списке. У меня есть все остальное, поэтому нет необходимости в помощи, просто сохраняя дату в текстовом режиме. Мой код выглядит следующим образом. Кто-нибудь может сказать мне, что случилось?Сохранить дату в общих предпочтениях

SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); 
       SharedPreferences.Editor editor = settings.edit(); 
       editor.putLong("time", date.getTime()); 
       editor.commit(); 
       Date date2 = new Date(settings.getLong("time", 0)); 
+1

какие ошибки вы получаете – tyczj

+0

@tyczj ни его просто не экономя дате вместо завтра это установит все даты в моем списке на дату завтрашнего дня, как getView и .setText я знаю – LimpLimp

+0

Ваш код выглядит хорошо для меня. Вы отлаживали ту часть, которую вы опубликовали. Я уверен, что все в порядке. Может быть проблема (даты в ListView?) Лежит где-то в другом месте? – Ridcully

ответ

4

Большинство методов класса Date устарели. Вы должны использовать класс Calendar.

хранить в SharedPreferences, я предлагаю вам хранить долго, которым является возвращение c.getTimeInMillis();

Чтобы получить эту дату и хранить в объекте Calendar, вы должны поставить c.setTimeInMillis(myTimeStoredInSharedPreferences)

1

Я d говорят забывать и о дате и календарь - использовать только:

SharedPreferences settings = 
    PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); 
settings.edit().putLong("time", System.currentTimeMillis()).commit(); 
// get the time and make a date out of it 
Date date2 = new Date(settings.getLong("time", 0)); 

То есть использовать currentTimeMillis() внутри вашего приложения и использовать только дату, если лет и хотят, чтобы показать что-то пользователю

Никогда не используйте Calendar.getInstance() локально - это дорого

Если вы используете даты все время считают JodaTime

+0

do i place Date date2 = new Date (settings.getLong ("time", 0)); в onCreate деятельности? – LimpLimp

+0

@ LimpLimp: вы размещаете его там, где вам это нужно - то есть для _getting_ времени от SP и создания даты из него - отредактировал сообщение –

Смежные вопросы