NSCalendar
может дифф даты легко (при условии, start
и end
являются NSDate
экземпляры
let calendar = NSCalendar.currentCalendar()
let components = calendar.components(.Minute, fromDate: start, toDate: end, options: [])
components.minute
Если вы заинтересованы в получении только отформатированную строку, а не фактическое значение, то контроль NSDateComponentsFormatter
:
let formatter = NSDateComponentsFormatter()
formatter.allowedUnits = .Minute
formatter.unitsStyle = .SpellOut
// includesTimeRemainingPhrase gives strings like "T minutes remaining"
formatter.stringFromDate(start, toDate: end)
Изменяя unitsStyle
, вы можете получить различные изображения, такие как:
"54m"
"54 minutes"
"54 min"
"fifty-four minutes"
NSDateFormatter, NSCalendar, NSDateComponentsFormatter – jtbandes
Там в большой стручок DateTools, что правильно обрабатывает много времени на основе расчетов – markedwardmurray