2011-08-18 5 views
1

내 앱의 사용자에게 '오늘', '어제'또는 형식이 지정된 날짜 (예 : 27/05/2011)로 날짜를 표시하고 싶습니다. NSDate를 기반으로 "오늘"또는 "어제"를 신속하게 얻을 수 있습니까? 만약 내가 직접 코드를 작성할 수 없다면 남은 시간을 수동으로 해결하는 것보다 간단한 방법을 간과한다면 궁금 할 것입니다.NSDate에서 "오늘"과 "어제"활동하고 있습니까?

답변

8

당신이 당신 사용자에게 날짜를 제시 할 경우, 그 권리에 대한 NSDateFormatter의 옵션이 있습니다.
- (void)setDoesRelativeDateFormatting:(BOOL)b

자세한 내용은 설명서를 참조하십시오.

+0

NSDateFormatter를 사용하고 있으며 문서에서이 사실을 발견하지 못했지만 실제로 달성하기 위해 찾고있는 것이 정확히 무엇인지 말해야합니다. 좋은 발견, 많은 감사. – fuzzygoat

2

이 비슷한 질문을 확인하십시오 : Compare NSDate for Today or Yesterday.

어제 오늘부터 NSDate 개의 개체를 만든 다음 description의 처음 10자를 확실하지 않은 NSDate 개와 비교합니다. Date and Time Programming Guide에서

+0

이것은 재미있는 방법이고 내가 생각한 사람이 아니며, 내가 연극을하고 내가 한 일을 어떻게 진행하는지 보게 될 것입니다. 매우 감사. – fuzzygoat

+0

이것은 잘 작동하지만 setDoesRelativeDateFormatting : (Evgeniy이 지적한대로) NSDateFormatter를 사용하면 조금 더 단순 해 보입니다. – fuzzygoat

1

:

NSTimeInterval secondsPerDay = 24 * 60 * 60; 
NSDate *today = [[NSDate alloc] init]; 
NSDate *tomorrow, *yesterday; 

tomorrow = [today dateByAddingTimeInterval: secondsPerDay]; 
yesterday = [today dateByAddingTimeInterval: -secondsPerDay]; 
[today release]; 
+0

고맙습니다. 위의 내용을 보았습니다. 그러나 NSDate는 어느 날부터 어느 날까지 오프셋되어 있습니다. 임의의 참조 날짜와 비교하지 않습니다. – fuzzygoat

+0

@fuzzygoat : 처음 10자를 찍은 날짜와 비교하여 시간 - 분 - 초를 삭제할 수 있습니다. – PengOne

관련 문제