【发布时间】:2015-12-13 09:15:26
【问题描述】:
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierISO8601];
[calendar setTimeZone:[NSTimeZone defaultTimeZone]];
[calendar setFirstWeekday:2];
[calendar setMinimumDaysInFirstWeek:1];
NSDateComponents *mockTodayComponents = [[NSDateComponents alloc] init];
mockTodayComponents.day = 28;
mockTodayComponents.month = 12;
mockTodayComponents.year = 2015;
NSDate *date = [calendar dateFromComponents:mockTodayComponents];
NSDateComponents *c = [calendar components:NSCalendarUnitWeekOfYear | NSCalendarUnitYearForWeekOfYear fromDate:date];
NSInteger week = [c weekOfYear];
week 返回 1 而不是 53,并且由于它,下一年的周数枚举错误,我的代码有什么问题还是 Apple 的错误?
【问题讨论】:
标签: objective-c nsdate nscalendar nsdatecomponents