Добрый день! Я пытаюсь сделать выбор даты, используя this диалог выбора даты. Теперь у меня возникла проблема с настройкой defaultDate
Option, для этого требуется NSDate, поэтому я сделал это.Swift 2.1 - NSDateFormatter Weird bug
let date = NSDate()
let formatter1 = NSDateFormatter()
formatter1.dateFormat = "MMM dd"
formatter1.timeZone = NSTimeZone(abbreviation: "GMT")
formatter1.timeZone = NSTimeZone(forSecondsFromGMT: 28800)
let gmt8TimeZone = formatter1.stringFromDate(date)
let dateToday = formatter1.dateFromString(gmt8TimeZone)
print("\(gmt8TimeZone) - \(dateToday!)")
DatePickerDialog().show("Choose Date", doneButtonTitle: "Done", cancelButtonTitle: "Cancel", defaultDate: dateToday!, datePickerMode: UIDatePickerMode.Date) { (date) -> Void in
self.dateSelected = date
self.showTimePicker()
}
Проблема заключается в том, не начиная с defaultDate
, что я установил, который dateToday
. Итак, что я сделал, я печатаю строку даты gmt8TimeZone
и dateToday
, и это дает мне это Nov 25 - 2000-11-24 16:00:00 +0000
, почему это дает мне разные даты? это должно быть одно и то же право? Что я сделал не так?
строка, извлеченная из даты, и сама печать объекта nsdate дает разные значения. Я предполагаю, что объект NSDate принимает значение по умолчанию +0000 GMT. –
@LEVIS OGCPAS Почему вы меняете часовой пояс? –
Вся дата, которую пользователь отправляет, должна быть от GMT + 8, у пользователей разные часовые пояса на их телефонах, поэтому я хочу сделать ее в форме. –