2016-04-05 13 views
0
func show(title: String, doneButtonTitle: String = "Done", cancelButtonTitle: String = "Cancel", defaultDate: NSDate = NSDate(), datePickerMode: UIDatePickerMode = .DateAndTime, callback: DatePickerCallback) { 
    self.titleLabel.text = title 
    self.doneButton.setTitle(doneButtonTitle, forState: .Normal) 
    self.cancelButton.setTitle(cancelButtonTitle, forState: .Normal) 
    self.datePickerMode = datePickerMode 
    self.callback = callback 
    self.defaultDate = defaultDate 
    self.datePicker.datePickerMode = self.datePickerMode ?? .Date 
    self.datePicker.date = self.defaultDate ?? NSDate() 
    self.datePicker.locale = NSLocale.currentLocale() 
    /* */ 
    UIApplication.sharedApplication().windows.first!.addSubview(self) 
    UIApplication.sharedApplication().windows.first!.endEditing(true) 

    NSNotificationCenter.defaultCenter().addObserver(self, selector: "deviceOrientationDidChange:", name: UIDeviceOrientationDidChangeNotification, object: nil) 

    /* Anim */ 
    UIView.animateWithDuration(
     0.2, 
     delay: 0, 
     options: UIViewAnimationOptions.CurveEaseInOut, 
     animations: {() -> Void in 
      self.backgroundColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.4) 
      self.dialogView!.layer.opacity = 1 
      self.dialogView!.layer.transform = CATransform3DMakeScale(1, 1, 1) 
     }, 
     completion: nil 
    ) 
} 

こんにちは、私はself.datePicker.dateに戻り、3時間前に戻ります。どのようにしてこの問題を解決できますか?self.datePicker.locale = NSLocale.currentLocale()を追加しましたが、問題は修正されていません。必要に応じてさらに情報を追加できます。UIDatePickerが間違った時刻を表示する

+1

に、あなたは、その拡張子NSDate { のvar localtimeのようなものを行っています。 currentLocale())! } } println(selectedDate.localTime) – Mingebag

+0

はいこのコード部分の固定された問題は、私がチェックする回答でこのコードを送信できますか –

答えて

0

日付ピッカーは現地時間を使用しますが、UTC時間を格納します。あなたのローカルタイムオフセットが-5hであることを意味します。あなたはそれから右の日付と時刻を抽出するために従うよう行うことができます:文字列{ リターンdescriptionWithLocale(NSLocale:

extension NSDate { 
    var localTime: String { 
     return descriptionWithLocale(NSLocale.currentLocale())! 
    } 
} 

println(chosenDate.localTime) 

小道具をLeo `

関連する問題