如何使用 Swift 在 iOS 日历应用程序中编辑事件日期?

How to edit events date in iOS calendar app with Swift?

我搜索如何在 iOS 日历应用程序中编辑我的活动日期。我已成功添加事件,但日期始终是当天的日期。我搜索如何以编程方式精确日期(例如:2019 年 5 月 10 日 08:00 下午)。

这是我添加的用于在日历中添加事件的代码。

import UIKit
import EventKit

class CalendarViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    // To add event to iOS Calendar app
    @IBAction func addToCalendar(_ sender: Any) {

        let eventStore:EKEventStore = EKEventStore()

        eventStore.requestAccess(to: .event) { (granted, error) in

            if (granted) && (error == nil)

            {
                print("granted \(granted)")
                print("error \(error)")

               let event:EKEvent = EKEvent(eventStore: eventStore)
                event.title = "Concours de coinchée"
                event.startDate = Date()
                event.endDate = Date()
                event.notes = "Cantine scolaire de Goupillières"
                event.calendar = eventStore.defaultCalendarForNewEvents

                do {
                     try eventStore.save(event, span: .thisEvent)
                } catch let error as NSError {

                    print("error : \(error)")
                }

                print("Save Event")

            } else {

                print("error : \(error)")
            }
        }
    }
}

试试这个来更改日期:

    var dateComponents = DateComponents()
    dateComponents.year = 2020
    dateComponents.month = 1
    dateComponents.day = 1
    dateComponents.hour = 10
    dateComponents.minute = 30

    let startDate = Calendar.current.date(from: dateComponents)

    dateComponents.hour = 11

    let endDate = Calendar.current.date(from: dateComponents)

    let event: EKEvent = EKEvent(eventStore: eventStore)
    event.title = "Concours de coinchée"
    event.startDate = startDate
    event.endDate = endDate
    event.notes = "Cantine scolaire de Goupillières"
    event.calendar = eventStore.defaultCalendarForNewEvents