我找到了一些很棒的solutions用于以用户友好的格式显示过去的日期,例如刚才,几小时前,昨天,上周等。
但是,我无法为将来的活动/约会找到类似的友好格式。
我正在寻找像今天下午2点这样的东西。明天,周三下午3:45。下周二,9月12日下午2点。或者更远的日期,2015年11月12日星期五下午2点。
任何人都可以推荐一个这样做的类别,一个教程或以解决方法的形式提供指导吗?
提前感谢任何建议。
答案 0 :(得分:1)
解决方案是一样的。您可以在link you mentioned上构建解决方案。
[[NSDate date] timeIntervalSinceDate:date];
是两个日期之间的简单减法,如果日期是过去或未来,则返回正面或负面双倍。
在验证日期是过去还是未来之后,一些数学将为您提供良好的用户友好字符串。例如,您可以根据参数更改格式。
如果您想要的内容总是像“11月15日星期三下午02:00”,则可以使用NSDateFormater。
对于你的情况:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEEE, MMMM dd 'at' HH:mma"];
NSDate *date = [NSDate dateWithTimeIntervalSinceReferenceDate:162000];
NSString *formattedDateString = [dateFormatter stringFromDate:date];
使用此方法,日期字符串将始终采用相同的格式。
希望这会有所帮助。