从NSDate开始制作“今天”和“昨天”?

时间:2011-08-18 17:50:06

标签: iphone objective-c cocoa-touch

我想向我的应用程序用户显示“今天”,“昨天”或格式化日期(即27/05/2011)的日期。有没有根据给定的NSDate获得“今天”或“昨天”的快速方法?如果不是我可以自己编写代码,我只是好奇我是否忽略了一些比手工制作剩余时间更简单的方法。

3 个答案:

答案 0 :(得分:8)

如果您只想向用户显示日期,NSDateFormatter中有一个选项可供选择。
- (void)setDoesRelativeDateFormatting:(BOOL)b

请查看文档以获取更多信息。

答案 1 :(得分:2)

查看类似的问题:Compare NSDate for Today or Yesterday

您从今天和昨天开始生成NSDate个对象,然后将description的前10个字符与您不确定的NSDate进行比较。

答案 2 :(得分:1)

来自Date and Time Programming Guide

NSTimeInterval secondsPerDay = 24 * 60 * 60;
NSDate *today = [[NSDate alloc] init];
NSDate *tomorrow, *yesterday;

tomorrow = [today dateByAddingTimeInterval: secondsPerDay];
yesterday = [today dateByAddingTimeInterval: -secondsPerDay];
[today release];