我正在学习swift2 ..
我有一个用户输入日期的datepicker元素。我想计算当前日期的天数,小时数,分钟数的差异
我可以将日期变为变量,但我无法与当前的NSDate()产生差异。
任何帮助将不胜感激。
class ViewController: UIViewController {
@IBOutlet var hourLabel: UILabel!
@IBOutlet var dobPicker: UIDatePicker!
@IBAction func convertAge(sender: AnyObject) {
let userDOB = dobPicker.date
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd-MMMM-yyyy"
hourLabel.text = "\(dateFormatter.stringFromDate(userDOB))"
}
override func viewDidLoad() {
super.viewDidLoad()
let nowDate = NSDate()
let df = NSDateFormatter()
df.dateFormat = "dd-MMMM-yyyy"
}
}
答案 0 :(得分:4)
我首先以秒计算差异。
let currentDate = NSDate()
let someDateInThePast = NSDate().dateByAddingTimeInterval(-100000)
let difference = currentDate.timeIntervalSince1970 - someDateInThePast.timeIntervalSince1970
个人金额(例如3天,92小时,5520分钟)
var days = floor(difference/24/3600)
var hours = floor(difference/3600)
var minutes = floor(difference/60)
总金额(例如3天,20小时,12分钟)
var days = floor(difference/24/3600)
var hours = floor((difference % (24*3600) ) / 3600)
var minutes = floor((difference % 3600) / 60)
var seconds = floor(difference % 60)