UITableview
日付付きのタイトルを取得するにはどうすればよいですか?
次を使用してタイトルを編集できることを知っています。
self.title=@"meals for ..";
1週間の日付を追加したいです。どうやってやるの?
UITableview
日付付きのタイトルを取得するにはどうすればよいですか?
次を使用してタイトルを編集できることを知っています。
self.title=@"meals for ..";
1週間の日付を追加したいです。どうやってやるの?
めったに知られていないNSCalendarメソッドが最良のオプションIMOになります
rangeOfUnit:startDate:interval:forDate:
. 特定の時間単位の開始と期間 (間隔) を示します。これを使用すると、使用されているカレンダーで週の始まりを簡単に見つけて、その週の最新の秒を取得するために範囲 1 を追加できます。
まためったに見られないlocalizedStringFromDate:dateStyle:timeStyle:
OS X v10.6、iOS 4.0で利用可能で、日付のローカライズされた表現を簡単に作成できます。
NSCalendar *cal = [NSCalendar currentCalendar];
NSDate *now = [NSDate date];
NSDate *startOfTheWeek;
NSDate *endOfWeek;
NSTimeInterval interval;
[cal rangeOfUnit:NSWeekCalendarUnit
startDate:&startOfTheWeek
interval:&interval
forDate:now];
//startOfWeek is 2013-06-02 22:00:00 +0000 now (note: it is GMT with timezone support for my timezone Europe/Berlin/DST)
endOfWeek = [startOfTheWeek dateByAddingTimeInterval:interval-1];
// 2013-06-09 21:59:59 +0000
NSString *text = [NSDateFormatter localizedStringFromDate:startOfTheWeek
dateStyle:NSDateFormatterShortStyle
timeStyle:NSDateFormatterNoStyle];
text = [text stringByAppendingString:@" to "];
text = [text stringByAppendingFormat:@"%@", [NSDateFormatter localizedStringFromDate:endOfWeek
dateStyle:NSDateFormatterShortStyle
timeStyle:NSDateFormatterNoStyle]];
self.title=text;
03.06.13 to 09.06.13
私のドイツ語ロケールでは、月曜日が週の始まりになります。