我为标签创建了3个插座,为按钮创建了1个操作,为UIDatePickerView创建了1个插座。 lblField显示当前日期,包括月,日和年[2017年1月25日]格式。按下dueDate操作后,lblField2显示用户选择的日期。现在,我需要计算当前日期和所选日期之间的差异,即lblField3中的(lblField2 - lblField)。如何在Swift3中显示月份和天数的差异值。我需要严格的Swift3?
答案 0 :(得分:2)
您可以使用dateComponentsFormatter
。
let formatter = DateComponentsFormatter()
formatter.allowedUnits = [.month,.day]
formatter.maximumUnitCount = 2
formatter.unitsStyle = .full
lblField3.text = formatter.string(from: Date(), to: datePicker.date) ?? ""
如果您想要特定月份和日期的差异,可以这样使用Calendar
。
let components = Calendar.current.dateComponents([.month, .day], from: Date(), to: datePicker.date)
let dayDifference = components.day!
let monthDifference = components.month!
答案 1 :(得分:0)
var date = NSDate().dateStringWithFormat(format: "dd.MM.YYY")
print(date)
<强> 2017年2月15日强> 这将是日期格式化器简单和新的单行sytax