次の方法で日付を表示したい:
- 今日の場合は、時刻のみを表示します。
- 過去一週間であれば「昨日」「日曜日」「月曜日」などと表示します。
- 1 週間以上前の場合は、実際の日付を表示します。
iPhone SMSアプリケーションで日付が表示される方法に似たものを取得しようとしています。
次の方法で日付を表示したい:
iPhone SMSアプリケーションで日付が表示される方法に似たものを取得しようとしています。
の方法を使用しない理由
setDoesRelativeDateFormatting:
YES に設定します。フォーマッタは、フォーマットする必要がある日付に応じて、「今日」または「昨日」または「明日」を返すようになりました。相対形式が見つからない場合は、その形式に使用されるフォーマッタを使用します。
試したことのないことを質問する前に、 (ここにリンク) と (ここにNSDateFormatter
リンク)クラスのドキュメントを参照してください。NSDate
このNSDateFormatter
クラスを使用して、日付のさまざまなコンポーネントの固定パラメーターを使用して、日付を適切にフォーマットすることができます。曜日の完全な名前を表示するには、形式で「cccc」を使用します。例えば
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setFormat:@"cccc dd-MM, HH:mm:ss"];
日付を比較するには、、などNSDate
のオブジェクトを比較するためのメソッドが組み込まれています。Apple のドキュメントリンクを参照してください。isEqualToDate
laterDate:
timeIntervalSinceNow