在我的应用程序中,我正在显示表格视图中的月份列表。对于每个月,某些日期的事件很少。所以我的问题是如何将我的数组中的日期与月份的日期进行比较,以仅显示各自月份中的事件。
问问题
166 次
2 回答
0
在您的情况下,您可能只需要比较日期的年份和月份部分。可能有很多方法可以实现这一点。这就是我会尝试的。以 yyyy-MM 格式在表格视图中转换您的日期,并以相同格式转换事件日期,可能如下所示。
NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init];
[dateFormatter1 setDateFormat:@"yyyy-MM"];
dateFormatter1.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
NSDate *monthDate=[NSDate date];
NSString *strMonthDate=[dateFormatter1 stringFromDate:monthDate];
NSLog(@"%@",strMonthDate);
使用普通的 NSString 比较方法将此 monthDate 字符串与您的 eventDate 字符串进行比较。
于 2013-07-09T12:04:33.457 回答
0
你可以使用NSDateComponents
:
NSCalendar* calendar = [NSCalendar currentCalendar];
NSDateComponents* components =
[calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:yourDate];
[components month];// gives you month
例如,将此月与 Array 索引或您喜欢的其他方式进行比较。
于 2013-07-09T11:26:07.567 回答