0

Apple がアプリで行うように、日付と時刻を処理する関数を作成するにはどうすればよいでしょうか? (例: メッセージ アプリとメモ アプリ) 今日が終わったら昨日と言うでしょう。それは、1 週間前の日付と言うでしょう。それからそれは日を言うでしょう。毎回チェックする switch ステートメントのようにする必要がありますか? 特に、テーブル ビュー セルの詳細セクションでそれが必要な場合は、それが不格好に思えるからです。

4

1 に答える 1

0

この関数を使用して、指定された日付が今日かどうかをテストします

- (BOOL)isSameDay:(NSDate*)date1 date2:(NSDate*)date2 {
    NSCalendar* calendar = [NSCalendar currentCalendar];

    unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit |  NSDayCalendarUnit;
    NSDateComponents* comp1 = [calendar components:unitFlags fromDate:date1];
    NSDateComponents* comp2 = [calendar components:unitFlags fromDate:date2];

    return [comp1 day]   == [comp2 day] &&
    [comp1 month] == [comp2 month] &&
    [comp1 year]  == [comp2 year];
}
于 2012-05-14T06:59:58.597 に答える