检查日期是否在同一日历日

diz*_*izy 3 iphone calendar objective-c

有人可以帮我弄清楚如何检查某个日期是否与今天同一天.我想这需要在同一时区的同一天的0小时创建一个日历日并检查,但到目前为止,我的尝试让我更加困惑.

Chu*_*uck 5

NSCalendar让您处理人类的日子.所以你可以实现这样的类别:

@implementation NSDate (IsItToday)
- (BOOL)isToday {
    NSUInteger desiredComponents = NSEraCalendarUnit|NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit;
    NSDateComponents *myCalendarDate = [[NSCalendar currentCalendar] components:desiredComponents fromDate:self];
    NSDateComponents *today = [[NSCalendar currentCalendar] components:desiredComponents fromDate:[NSDate date]];
    return [myCalendarDate isEqual:today];
}
@end
Run Code Online (Sandbox Code Playgroud)