#flutter #sharedpreferences #timepicker
#flutter #общие предпочтения #timepicker
Вопрос:
Я попытался сохранить выбранное время навсегда, используя общие настройки внутри future asynchronous с помощью set string и get string внутри load_reftime(). Также в общих настройках я добавляю выбранное время в заданную строку с помощью .tostring() и добавляю TimeOfDay .из DateTime(DateTime.parse(prefs.getString(_time))); с помощью DateTime.parse, чтобы убедиться, что выбранное время сохраняется и загружается постоянно к моменту перезапуска моего приложения-эмулятора. Но результат тот же.
Мне нужен совет и решение, чтобы сохранить выбранное время в SharedPreferences и изменить его только тогда, когда я решу изменить Спасибо.
Для кода: https://drive.google.com/file/d/1BYftWqgBGc7K-ggo1iwrcCwbohAotuS3/view?usp=sharing
Комментарии:
1. пожалуйста, поделитесь кодом, который вы сохраняете после, а затем получите время, используя общие настройки
2. Код находится в изображении ссылки 1-й код, 2-й код и 3-й код. Спасибо
3. упомяните, имя переменной для сохранения — selectedTime или selectedClock?
4. Оба. Ссылка на код находится в моем вопросе
5. каждый раз, когда TimeOfDay selectedTime = TimeOfDay.now(); TimeOfDay selectedClock = TimeOfDay.now(); инициализируйте с помощью TimeOfDay.now , так что вы обязательно получите из общих настроек
Ответ №1:
При сохранении в Sharedpreferences сохраните его следующим образом:
preferences.setString('time', DateTime(
DateTime.now().year,
DateTime.now().month,
DateTime.now().day,
endTime!.hour, // TimeOfDay
endTime!.minute, //TimeOfDay
).toString());
И для получения,
time = TimeOfDay.fromDateTime(
DateTime.parse(preferences.getString('time')!));
Это должно это исправить!