¿Cómo agregar 1 día a NSDate en Swift? Problema con DateComponents
¡Hola a todos! Soy un desarrollador iOS principiante y escribo en Swift. Me encontré con una tarea aparentemente simple: necesito tomar la fecha actual, agregarle exactamente 1 día y obtener una nueva fecha. ¡Pero nada funciona!
Aquí está mi código:
```swift
let currentDate = NSDate()
let tomorrow = currentDate.addingTimeInterval(60 * 60 * 24) // 24 horas en segundos
print(tomorrow)
```
El problema es que durante el cambio de horario de verano/invierno, 24 horas no siempre son exactamente 1 día. Por ejemplo, en primavera un día puede durar 23 horas, y en otoño, 25. Debido a esto, obtengo la hora incorrecta. Además, si quiero agregar 1 mes o 1 año, este enfoque no sirve en absoluto.
Sé que en Objective-C se usaban `NSDateComponents` y `NSCalendar` para esto, pero en Swift me confundo con la nueva API. Intenté escribir así:
```swift
let calendar = Calendar.current
var components = DateComponents()
components.day = 1
let tomorrow = calendar.date(byAdding: components, to: currentDate as Date)
```
Pero `currentDate as Date` es