1

NSDates と比較したいのですが、時間と分に関してのみです。最初の日付は配列から与えられ、2 番目の日付は現在のものです。私はこの方法で到着しませんでした:

 NSDateComponents *components = [gregorian components:unitFlags
                                                fromDate:date
                                                  toDate:currentDate options:0];

私の問題を解決するための簡単で良いアイデアはありますか?

編集: ユーザー 'sunny' は、私の問題を解決するためのさらにいくつかの方法を投稿しました: Objective-C で 2 つの日付を比較する方法

4

2 に答える 2

4
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *comp1 = [calendar components: NSHourCalendarUnit | NSMinuteCalendarUnit
fromDate: date1];

NSDateComponents *comp2 = [calendar components: NSHourCalendarUnit | NSMinuteCalendarUnit
fromDate: date2];

これで、2 つの日付を比較するために必要なすべてのデータが揃いました。

comp1.hour > comp2.hour
comp1.minute > comp2.minute
于 2013-05-24T12:39:11.770 に答える
1

試す

 NSDateComponents *components = [[NSCalendar currentCalendar]components:NSHourCalendarUnit|NSMinuteCalendarUnit
                                                              fromDate:date
                                                                toDate:currentDate
                                                               options:0];

if (components.hour==0&&components.minute==0) {
    NSLog(@"Equal time");
}
于 2013-05-24T12:40:19.283 に答える