Avatar ·

Wie füge ich 1 Tag zu NSDate in Swift hinzu? Problem mit DateComponents

Hallo zusammen! Ich bin ein Anfänger iOS-Entwickler und schreibe in Swift. Ich bin auf eine scheinbar einfache Aufgabe gestoßen: Ich muss das aktuelle Datum nehmen, genau 1 Tag hinzufügen und ein neues Datum erhalten. Aber nichts funktioniert! Hier ist mein Code: ```swift let currentDate = NSDate() let tomorrow = currentDate.addingTimeInterval(60 * 60 * 24) // 24 Stunden in Sekunden print(tomorrow) ``` Das Problem ist, dass bei der Umstellung auf Sommer-/Winterzeit 24 Stunden nicht immer genau 1 Tag sind. Zum Beispiel kann ein Tag im Frühling 23 Stunden und im Herbst 25 Stunden dauern. Dadurch erhalte ich die falsche Uhrzeit. Außerdem, wenn ich 1 Monat oder 1 Jahr hinzufügen möchte, ist dieser Ansatz überhaupt nicht geeignet. Ich weiß, dass in Objective-C dafür `NSDateComponents` und `NSCalendar` verwendet wurden, aber in Swift bin ich mit der neuen API verwirrt. Ich habe es so versucht: ```swift let calendar = Calendar.current var components = DateComponents() components.day = 1 let tomorrow = calendar.date(byAdding: components, to: currentDate as Date) ``` Aber `currentDate as Date` ist...