前端之家收集整理的这篇文章主要介绍了
Swift设置微信朋友圈时间显示样式,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
把请求下来的时间字符串(requestDateString)转换为NSDate
let formatter = NSDateFormatter()
formatter.dateFormat = "EEE MMM d HH:mm:ss Z yyyy"
formatter.locale = NSLocale(localeIdentifier: "en")
let requestDate = formatter.dateFromString(requestDateString)
把转换好的NSDate转换成要显示的形式
func getShowFormat(requestDate:NSDate) @H_404_24@-> String {
let calendar @H_404_24@= NSCalendar.currentCalendar()
if calendar.isDateInToday(requestDate) {
let since @H_404_24@= Int(NSDate().timeIntervalSinceDate(requestDate))
if since @H_404_24@< 60 {
return "刚刚"
}
if since @H_404_24@< 60 @H_404_24@* 60 {
return "\(since/60)分钟前"
}
return "\(since / (60 * 60))小时前"
}
var formatterString @H_404_24@= "HH:mm"
if calendar.isDateInYesterday(requestDate) {
formatterString @H_404_24@= "昨天" @H_404_24@+ formatterString
} else {
formatterString @H_404_24@= "MM-dd" @H_404_24@+ formatterString
let comps @H_404_24@= calendar.components(NSCalendarUnit.Year,fromDate: requestDate,toDate: NSDate(),options: NSCalendarOptions(rawValue: 0))
if comps.year @H_404_24@>= 1 {
formatterString @H_404_24@= "yyyy-" @H_404_24@+ formatterString
}
}
let formatter @H_404_24@= NSDateFormatter()
formatter.dateFormat @H_404_24@= formatterString
formatter.locale @H_404_24@= NSLocale(localeIdentifier: "en")
return formatter.stringFromDate(requestDate)
}