Frage

Ich habe 14:01:20 PM -Format in einem Label; Nach einigen Berechnungen muss ich die Stunde und/oder die Minute dieses Etiketts ändern.

Ist es möglich, diesen Etikettwert zu ändern, indem er ihn als NSDate -Objekt konvertiert und Stunde und Minute wie 15:20:30 Uhr geändert wird?

Gibt es dafür Setzermethoden?

War es hilfreich?

Lösung

Wenn Sie bestimmte Realinstanzen in der Zeit berechnen müssen, z. B. 3:20:30 Uhr 23. Oktober 2010, möchten Sie NSCalendar verwenden, mit dem Sie Daten zersetzen und Datumsberechnungen durchführen können.

Warnwort. Datums- und Uhrzeitberechnungen sind überraschend komplex und detailliert. Erwarten Sie ein paar Stunden damit, die API zu lernen.

Andere Tipps

Die Antwort auf Ihre erste Frage "Wie setze ich die Stunde in NSDate programmatisch fest?"folgt:

    NSDate* result;
    NSDateComponents *comps = [[NSDateComponents alloc] init];
    [comps setMinute:0];
    [comps setHour:0];
    NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
    result = [gregorian dateFromComponents:comps];
    [comps release];
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top