2012-11-25 58 views
0
 NSDateComponents *result = [[NSCalendar currentCalendar] components:NSQuarterCalendarUnit fromDate:start toDate:end options:0]; 

     NSInteger numberOfQuaters = [result quarter]; 

爲什麼此代碼將始終返回0?組件:NSQuarterCalendarUnit給出兩個日期之間的總季度?

這應該不會給我NSDate start和NSDate end之間的季度數?

例如,如果開始是2012年1月1日和結束是2013年6月3日,我應該有= 6

+0

這似乎是一個蘋果的bug,請參閱http://stackoverflow.com/questions/11618784/i-want-to-get-a-quarter-value-in-nsdatecomponents-class或http:// openradar.appspot.com/9270112 –

+0

也是受bug影響? NSCalendarUnit unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSQuarterCalendarUnit; – Fabrizio

+0

你還需要幫助嗎,還是在此期間解決了問題? –

回答

0

我發現這個解決方案numberOfQuarters而奇蘋果的缺陷仍然存在:

numberOfQuarters =(4 - startQuarter)+((endYear -1 - startYear)* 4)+ endQuarter;