-[NSDateFormatter setDoesRelativeDateFormatting:]
日付を「今日」または「昨日」として表示するために使用することを検討しています。私は過去の日付だけを見ていますが、英国向けにローカライズされたオプションを知りたいです。
ただ
- "今日"
- "昨日"
またはもっと複雑なもの
- 「昨日の前日」
それらを正しく表示するために必要な画面スペースのアイデアを得ることができるように、可能な出力はどこかにリストされていますか?
-[NSDateFormatter setDoesRelativeDateFormatting:]
日付を「今日」または「昨日」として表示するために使用することを検討しています。私は過去の日付だけを見ていますが、英国向けにローカライズされたオプションを知りたいです。
ただ
またはもっと複雑なもの
それらを正しく表示するために必要な画面スペースのアイデアを得ることができるように、可能な出力はどこかにリストされていますか?
はい。次のプログラムを実行すると、コンソールウィンドウに表示されます。
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
@autoreleasepool {
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterFullStyle];
[formatter setDoesRelativeDateFormatting:YES];
NSCalendar * cal = [[NSLocale currentLocale] objectForKey:NSLocaleCalendar];
NSDateComponents * minusOneDay = [[NSDateComponents alloc] init];
[minusOneDay setDay:-1];
NSDate * today = [NSDate date];
NSDate * date = [NSDate date];
while( 1 > [[cal components:NSYearCalendarUnit fromDate:date toDate:today options:0] year] ){
NSLog(@"%@", [formatter stringFromDate:date]);
date = [cal dateByAddingComponents:minusOneDay
toDate:date
options:0];
}
}
return 0;
}
私のロケールでは、リストは「明日」、「今日」、「昨日」のようです。