2012-03-08 6 views
0

iOS 5.0(9A334)で奇妙な問題が発生しています。問題は、CFCalendarGetOrdinalityOfUnitを使用して特定の日付の曜日を取得することです。 CFCalendarGetOrdinalityOfUnitは、iOS 5.0(9A334)で予想外の値を示します。

CFCalendarRef theCalendar = CFCalendarCopyCurrent(); 
CFAbsoluteTime newTime = 0; 
const char format[] = "yMdHms"; 
CFCalendarComposeAbsoluteTime (theCalendar,&newTime,format,theYear, theMonth,theDay, 0, 0, 0); 
NSInteger lastDayOfWeekInPreviousMonth = 
CFCalendarGetOrdinalityOfUnit (calendar,kCFCalendarUnitDay,kCFCalendarUnitWeek,absTime);

それはtheExpectedValue返します - 私は、今日の値を送信していますtheYear、theMonth、でtheDay 1.
値を。
しかし、他のバージョンのiOS(4.3や5.0.1など)では、期待値を正しく返します。私に解決策を教えてください。私はここで立ち往生している。

答えて

0

答えを入手しました - kCFCalendarUnitWeekのCFCalendarGetOrdinalityOfUnitは、iOSのバージョンによって異なる値を返すことがあります。だから、特定の日付にNSDateFormatterを使用してweekDayを取得する必要があります。

関連する問題