Я сохраняю время в Firebase, а затем позволяю пользователю перезагрузить сохраненное время.
Когда я извлекаю данные с сервера (в виде строки), а затем преобразую время обратно в тип даты, оно меняется с 12:00 (полдень) на 00:00 (полночь).
Я вижу данные в моей базе данных Firebase в реальном времени, и там четко указано 12:00, а не полночь.
Вот код, который я использую для извлечения данных из словаря, который я скачал из базы данных реального времени.
if let gtt1hourLabTime = patientDataDictionary["1 Hour lab Time"] as? String {
if let realgtt1HourLabTime = timeFormatTool(gtt1hourLabTime) {
print(realgtt1HourLabTime)
patientVC.gtt1HourLabTime = realgtt1HourLabTime
}
}
Вот мой инструмент формата времени:
func timeFormatTool(_ dateStr: String) -> Date? {
let simpleDateFormat = DateFormatter()
simpleDateFormat.dateFormat = "hh:mm"
let date = simpleDateFormat.date(from: dateStr)
return date
}
Когда время напечатано, оно выглядит так:
2000-01-01 00:18:00 +0000
HH:mm
HH означает 00-23.hh
в формате с 1:00 до 12:00. - person Leo Dabus   schedule 18.10.2017