2013-11-20 1 views
4

iOS 6 NSDate 객체에서 요일의 전체 이름을 얻는 데 문제가 있습니다 (iOS 7에서는 문제가 없습니다). 유사한 문제에 대해 stackoverflow를 검색했지만 찾고있는 것을 찾지 못했습니다.iOS 6 NSDateFormatter stringFromDate : 요일 공휴일

내 테스트 케이스는 다음과 같습니다

예상 출력 Friday을 (태양력 장치의 지역 형식 및 로컬 화)되어
formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"EEEE"]; 
[formatter setDoesRelativeDateFormatting:NO]; 

NSDate *testDate = [NSDate dateWithTimeIntervalSince1970:1384551041.389218]; 
NSLog(@"%@",[formatter stringFromDate:testDate]); 

, 그것은 아이폰 OS 7에서 작동하지만 아이폰 OS 6에 빈 설명을 반환합니다. 동일한 영역 형식 세트를 사용하여 실제 장치에서 테스트했습니다.

내가 아는 한, iOS 6은 this documentation에 따라 tr35-25 형식을 사용하고 EEEE은 그 형식으로 정식 요일을 지정합니다.

내가 누락 된 항목이 있습니까? 실제로 iOS에서 NSDateFormatter의 버그처럼 보이는

답변

5

6. 그러나, 버그가 명시 적으로 그 라인을 생략하면

[formatter setDoesRelativeDateFormatting:NO]; 

를 설정 한 경우에만 발생 것으로 보인다 (그리고 NO 어쨌든 기본값) 결과는 OK입니다 (적어도 테스트했을 때).

비고 : 내가 setDoesRelativeDateFormattingsetDateStyle:과 관련 에 사용되는 의미한다고 가정하지만 추측 순수하다.

+0

그 다음 대안은 무엇입니까 ?? –

+0

@hussainShabbir : 내가 말했듯이,'setDoesRelativeDateFormatting' 호출을 생략하십시오. –

+0

고마워요. martin :) –

2

[formatter setDoesRelativeDateFormatting : NO]를 제거하면; 당신의 코드에서 당신은 iOS 6.0과 iOS 7.0 모두에서 결과를 얻을 것입니다.