Swift 3.0:
Suppose you want an array of dates from today to the next 60 days.
extension Date {
func generateDates(startDate :Date?, addbyUnit:Calendar.Component, value : Int) -> [Date]
{
let calendar = Calendar.current
var datesArray: [Date] = [Date] ()
for i in 0 ... value {
if let newDate = calendar.date(byAdding: addbyUnit, value: i + 1, to: startDate!) {
datesArray.append(newDate)
}
}
return datesArray
}
}
Application:
var datesArrayByAddingDays:[Date]?
override func viewWillAppear(_ animated: Bool) {
datesArrayByAddingDays = Date().generateDates(startDate: Date(), addbyUnit: .day, value: 60)
}
source
share