NSDate
次のコードを使用して、年の週数を取得しようとしています。
int which = NSYearCalendarUnit | NSMonthCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit | NSWeekOfYearCalendarUnit | NSQuarterCalendarUnit;
NSDate* date= [NSDate date];
NSDateComponents* comps= [[NSCalendar currentCalendar] components:which fromDate:date];
today.weekNumber= comps.weekOfYear;
ただし、何らかの理由でクラッシュし、次のように述べています。
reason: -[NSDateComponents weekOfYear]: unrecognized selector sent to instance
週番号部分のコメントを外すと、他のコンポーネントは問題なく動作します。
int which = NSYearCalendarUnit | NSMonthCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit | NSWeekOfYearCalendarUnit | NSQuarterCalendarUnit;
NSDate* date= [NSDate date];
NSDateComponents* comps= [[NSCalendar currentCalendar] components:which fromDate:date];
// today.weekNumber= comps.weekOfYear;
today.month= comps.month;
today.year= comps.year;
today.quarter= comps.quarter;
today.hour= comps.hour;
today.minute= comps.minute;
today.second= comps.second;
ドキュメントによると、NSDateComponents
と呼ばれるプロパティがweekOfYear
必要ですよね?
私は混乱しています、本当に。