2016-07-01 5 views
0

Dieser Code gibt die Anzahl der Tage zwischen zwei Tagen zurück.Wie zeigt man Zeit, die weniger als ein Tag ist?

Wie kann man feststellen, wann die Zeit vergeht und der Tag zu Stunden wie (20 Stunden) oder (40 Minuten) wird, wie überprüfe ich dann, ob es ein Tag oder weniger als ein Tag ist.

-(NSInteger)numberOfDaysUntilDay:(NSDate *)aDate 
{ 

    NSCalendar *calendar = [[NSCalendar alloc] 
          initWithCalendarIdentifier:NSCalendarIdentifierGregorian]; 

    NSDateComponents *components = [calendar components:NSCalendarUnitDay 
               fromDate:self 
                toDate:aDate options:kNilOptions]; 

    return [components day];  
} 
+0

[NSDateComponentsFormatter] (https://developer.apple.com/library/ios/documentation/Foundation/Reference/NSDateComponentsFormatter_class/index.html#//apple_ref/doc/uid/TP40015130) – Desdenova

+0

Sie NSCalendarUnitDay verwendet, versuchen Sie einfach unitHour oder UnitMinute? – FredericP

+0

Verwenden Sie 'timeIntervalSinceDate:', um die verbleibende Zeit in Sekunden zu erhalten, Ergebnis/3600 für verbleibende Stunden, (Ergebnis% 3600)/60 für verbleibende Minuten und (Ergebnis% 3600)% 60 für verbleibende Sekunden. –

Antwort

0

Verwenden Sie stattdessen NSCalendarUnitSecond.

Später können Sie Sekunden in jede Einheit umwandeln (Stunde, Tag, Jahr).

+0

aber wie man bestimmt, wann die Zeit vergeht und der Tag zu Stunden wird (20 Stunden), wie überprüfe ich, ob es ein Tag oder weniger als ein Tag ist. –

Verwandte Themen