【发布时间】:2012-01-16 04:04:52
【问题描述】:
我的地区格式是美国,我得到的周数与我在也在美国的 Mac OSx 上得到的不同。 我使用的是 iOS 5,并且在这个 sdk 版本之前没有在 iOS 上编程。所以我只是想确保我没有做错什么。使用下面的这段代码,我在今年的最后一周得到了我认为错误的数字 53。我一周的第一天定在星期日。 请指教,谢谢。
NSCalendar* calendar = [NSCalendar currentCalendar];
NSDate *date = [NSDate date];
NSDateComponents *dateComponents = [calendar components:( NSWeekCalendarUnit) fromDate:date ];
int week = (int)[dateComponents week];
NSLog(@"%i", week);
作为 [NSDate date] 12 月 8 日,它返回第 50 周,但在 Mac OSX 上我得到第 49 周
【问题讨论】:
-
什么是
self?NSDate对象?我认为您将需要显示比这更多的代码。我要寻找的是您如何设置您传递给您的dateComponents对象的NSDate。 -
谢谢,它是NSDate上的一个分类,所以self就是日期,我编辑是为了更容易暴露代码
标签: ios cocoa-touch ios5 nsdate nsdatecomponents