Вы должны использовать Date
, DateComponents
и Calendar
вместо NSDate
, NSDateComponents
и NSCalendar
.Затем старый синтаксис необходимо обновить до последней версии Swift
.Также вам нужно изменить константу (let
) interval
и anchorComponents
на переменную (var
) при изменении значений.Ниже приведен фиксированный фрагмент,
let calendar = Calendar.current
var interval = DateComponents()
interval.day = 7
// Set the anchor date to Monday at 3:00 a.m.
var anchorComponents = calendar.dateComponents([.day, .month, .year, .weekday], from: Date())
let offset = (7 + (anchorComponents.weekday ?? 0) - 2) % 7
anchorComponents.day = (anchorComponents.day ?? 0) - offset
anchorComponents.hour = 3