Swift 扩展,用以根据当前日期格式化日期。
嵌入式框架需要至少 iOS 8 或 OS X Mavericks 的最小部署目标。
RelativeFormatter 仅仅是 NSDate 的一个扩展,你可以在任何 NSDate 对象上使用它
只有一个函数需要调用
relativeFormatted(idiomatic:Bool=false,precision:Precision=Precision.Second)->String
这两个参数都不是必需的。
该参数默认为 false,允许你使用惯用日期格式或仅仅使用数字。
示例
//oldDate is yesterday date
oldDate.relativeFormatted()
//outputs
// “1 day ago”
oldDate.relativeFormatted(idiomatic:true)
//outputs
// “yesterday”
精度参数允许你定义格式精度。默认值是秒。
示例
todayDate.relativeFormatted(precision:Precision.Year)
//outputs
// “this year”
todayDate.relativeFormatted(precision:Precision.Month)
//outputs
// “this month”
todayDate.relativeFormatted(precision:Precision.Day)
//outputs
// “today”
todayDate.relativeFormatted(precision:Precision.Hour)
//outputs
// “3 hours ago”
你总是可以使用带有默认参数的 relativeFormatted。如果你有一个代表2个月前的日期的 NSDate 对象,只需使用
oldDate.relativeFormatted()
然后你会得到
“2个月前”
它也适用于未来的日期(3年后的日期)
futureDate.relativeFormatted()
将会返回
“在3年后”
RelativeFormatter 包括对以下语言的本地化:
如果你希望包含新的语言,请创建一个 pull request。