2012-11-23 6 views
0
NSCalendar *calendar= [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; 
NSCalendarUnit unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit; 
NSDateComponents *dateStart = [calendar components:unitFlags fromDate:start]; 
quarterStart = [dateStart quarter]; 
NSDateComponents *dateEnd = [calendar components:unitFlags fromDate:end]; 
quarterEnd = [dateEnd quarter]; 

두 개의 NSDate 시작과 끝이 있고 시작 분기와 종료 분기를 추출하면이 두 날짜 간의 분기 차이를 알아야합니다.두 날짜 사이에 몇 개의 분기가 있습니까?

나는 총 일/90 일을 나눌 수 있다는 것을 알고 있지만 나는이 데이터 만 가지고있는 다른 해결책을 찾고있다.

힌트가 있습니까?

답변

0

저는 이것을 사용하여 해결했습니다. 다른 권장 답변이 quarter 단위의 Apple 버그에서 작동하지 않습니다.

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

당신이 어떤 버그에 확장 할 수 있습니까? 보고서를 제출 했습니까? – hwaxxer

+0

http://openradar.appspot.com/9270112 – Fabrizio

2

당신이 시도해야합니다

NSDateComponents *result = [[NSCalendar currentCalendar] components:NSQuarterCalendarUnit fromDate:start toDate:end options:0]; 
NSInteger numberOfQuaters = [result quarter]; 
+0

@ Andriy 죄송합니다. 결과를 얻는 방법은 무엇입니까? numberQuarters = ??? – Fabrizio

+0

나는 더 명확하게 대답을 편집했습니다 – Andriy

+0

고마워, 그게 도움 :) 다른 광산 솔루션도 좋을 것이라고 생각하니? – Fabrizio