如何在swift中使用datepicker计算日期

时间:2017-06-01 14:00:27

标签: iphone swift3

(首先,我很遗憾地说,我不擅长英语)

您好。我在swift3中创建了一个应用程序。

我想计算来自datepicker的日期和今天的日期。

我不知道如何将datepicker中的日期作为能够计算的格式。

    @IBAction func buttonClick(_ sender: UIButton) {
    let date = DateFormatter.localizedString(from: datePicker.date, dateStyle: .medium, timeStyle: .none)
    dateField.text = date

}

此代码保存日期和显示日期。当我单击按钮时,日期保存在标签中。

我无法用那种合成来计算。我不知道如何获得(今天 - 约会)

我该怎么办?

1 个答案:

答案 0 :(得分:-1)

假设你的函数是你的UIDatePicker的@IBOutlet,我想你想要计算你从选择器和Now中选择的日期/时间之间的时间间隔。

 @IBAction func datePickerPicked(_ sender: Any) {

      if let value = (sender as! UIDatePicker).date as Date? {

         // How many seconds between the picker's value to present time
         var secondsInterval = Int(value.timeIntervalSinceNow)

         let text = secondsInterval < 0 ? "in the PAST" : "in the FUTURE"

         // Remove negative sign, conversion
         secondsInterval = abs(secondsInterval)
         let days = secondsInterval / (60 * 60 * 24)
         let hrs = secondsInterval / (60 * 60)
         let mins = (secondsInterval % 3600) / 60
         let seconds = secondsInterval % 60

         print("You have picked: " ,days, "days,", hrs, "hours,", mins, "mins,", seconds, "seconds", text)
      }
   }