NSDate的。在今天之前抓住所有日期

时间:2013-08-01 10:22:43

标签: ios objective-c calendar nsdate

我正在尝试使用此calendar component,我的任务是在今天的日期之前以视觉和技术方式禁用所有日期。用户也可以在几个月之间切换,我需要在今天之前禁用所有日期,即使它将是几年前的日期。此日历还定义了disabledDateTextColordisabledDateBackgroundColor类型,但没有日期计算方法。我正在阅读NSDate文档,看起来我不能直接这样做,使用系统方法(我的意思是返回日期之前或之后的日期或类似的方法)。看起来像今天之前将所有现有日期添加到NSArray并在绘制日历之前将其标记为已禁用是明显的矫枉过正,不是吗?

1 个答案:

答案 0 :(得分:2)

在我以前的应用程序中,我使用了这种方法

switch ([dateOne compare:dateTwo]) {
case NSOrderedAscending:
    // dateOne is earlier in time than dateTwo
    break;
case NSOrderedSame:
    // The dates are the same
    break;
case NSOrderedDescending:
    // dateOne is later in time than dateTwo
    break;
}

日期格式化程序应该类似 阅读以下链接中的实例方法以获取更多信息

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSDate_Class/Reference/Reference.html#//apple_ref/occ/instm/NSDate/compare