如何从默认日历中删除所有事件
How to delete all events from the default calendar
如何在点击按钮时删除默认日历中的所有事件?
这是我当前的代码
@IBAction func deleteEvents(_ sender: UIButton) {
eventStore.calendars(for: .event).removeAll()
}
第一个问题不是当前日历。第二个问题是我收到以下错误:
错误:
Cannot use mutating member on immutable value: function call returns immutable value
没有removeAll
方法。
您需要使用EKEventStore
的方法来查询和移除想要的事件。
在高层次上,您需要:
- 请求访问日历事件的权限。
- 获取对所需
EKCalendar
的引用。
- 为您要查询的事件创建谓词。您需要一个日期范围和日历。
- 枚举符合谓词的事件。
- 删除每个枚举事件。
所有需要的 API 都在 EKEventStore
class 中。有关详细信息,请参阅其文档。
如何在点击按钮时删除默认日历中的所有事件?
这是我当前的代码
@IBAction func deleteEvents(_ sender: UIButton) {
eventStore.calendars(for: .event).removeAll()
}
第一个问题不是当前日历。第二个问题是我收到以下错误:
错误:
Cannot use mutating member on immutable value: function call returns immutable value
没有removeAll
方法。
您需要使用EKEventStore
的方法来查询和移除想要的事件。
在高层次上,您需要:
- 请求访问日历事件的权限。
- 获取对所需
EKCalendar
的引用。 - 为您要查询的事件创建谓词。您需要一个日期范围和日历。
- 枚举符合谓词的事件。
- 删除每个枚举事件。
所有需要的 API 都在 EKEventStore
class 中。有关详细信息,请参阅其文档。