Используйте функцию DateTools (github / Cocoapods) timeAgoSinceNow
. Вот пример вывода ...
NSDate.init(timeIntervalSinceNow:-3600).timeAgoSinceNow() "An hour ago"
NSDate.init(timeIntervalSinceNow:-3600*24).timeAgoSinceNow() "Yesterday"
NSDate.init(timeIntervalSinceNow:-3600*24*6).timeAgoSinceNow() "6 days ago"
NSDate.init(timeIntervalSinceNow:-3600*24*7*3).timeAgoSinceNow() "3 weeks ago"
NSDate.init(timeIntervalSinceNow:-3600*24*31*3).timeAgoSinceNow() "3 months ago"
Функция timeAgoSinceDate
также удобна.
DateTools поддерживает многие (человеческие) языки и дает гораздо лучшие относительные описания, чем NSDateFormatter
несколько ограниченный doesRelativeDateFormatting
.