Bonne journée! J'essaie de faire un sélecteur de dates en utilisant this boîte de dialogue de sélection de date. Maintenant, j'ai un problème sur le réglage de l'option defaultDate
, Il nécessite NSDate donc j'ai fait cela.Swift 2.1 - NSDateFormatter Bogue étrange
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()
}
Le problème est, il ne commençant le defaultDate
que je mets ce qui est dateToday
. Donc ce que j'ai fait, c'est que j'imprime la chaîne de date qui est gmt8TimeZone
et dateToday
et il me donne cette Nov 25 - 2000-11-24 16:00:00 +0000
pourquoi me donne-t-elle des dates différentes? ça devrait être le même droit? Ce que j'ai mal fait?
chaîne extraite à partir de la date et l'impression de l'objet nsdate lui-même donne des valeurs différentes, je suppose que l'objet NSDate prend par défaut +0000 GMT. –
@LEVIS OGCPAS Pourquoi changez-vous le fuseau horaire? –
Toute la date que l'utilisateur soumet doit être de GMT + 8, les utilisateurs ont des fuseaux horaires différents sur leurs téléphones, donc je veux le rendre uniforme. –