一个简单的日期扩展,使您能够轻松地为公历提供自定义重复日期选项。该软件包的创建和使用是为了 Expenses.app,其灵感来自 Apple Reminders 和 Bluebird。
let option = CustomRepeatDateOption.monthly(frequency: 3, option: .daysOfWeek(weekdayOrdinal: .second, weekday: .tuesday))
let calendar = Calendar(identifier: .gregorian)
let startDate = date(year: 2022, month: 5, day: 5) // 2022-05-05 22:22:22 +0000
let repeat1 = calendar.nextDate(after: startDate, option: option)! // 2022-05-10 22:22:22 +0000
let repeat2 = calendar.nextDate(after: repeat1, option: option)! // 2022-08-09 22:22:22 +0000
let repeat3 = calendar.nextDate(after: repeat2, option: option)! // 2022-11-08 22:22:22 +0000
let repeat4 = calendar.nextDate(after: repeat3, option: option)! // 2023-02-14 22:22:22 +0000
let repeat5 = calendar.nextDate(after: repeat4, option: option)! // 2023-05-09 22:22:22 +0000
要了解它在实践中如何工作,请查看 示例。
例 1 | 例 2 |
---|---|
![]() |
![]() |
swift package --allow-writing-to-directory ./docs \
generate-documentation --target CustomRepeatDate --output-path ./docs \
--transform-for-static-hosting --hosting-base-path custom-repeat-date
swift package --disable-sandbox preview-documentation --product CustomRepeatDate
另请参阅 apple/swift-docc-plugin 以获取更多信息。