首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在EKCalendar中创建EKEventStore - Swift

在EKCalendar中创建EKEventStore - Swift
EN

Stack Overflow用户
提问于 2015-03-26 18:38:31
回答 1查看 4.1K关注 0票数 2

当我的应用程序第一次运行时,我正在尝试在EKEventStore中创建一个日历。我找到了本教程,但是我对Objective还不太了解,无法将它翻译成Swift,而且从我所做的研究中,我想知道这种方法在ios8中是否仍然可行。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-28 04:29:01

尝试(注意,这是用于提醒类型,但如果需要,可以更改类型):

代码语言:javascript
复制
let eventStore = EKEventStore()
var yourReminderCalendar: EKCalendar?

func retrieveYourCalendar() {
    let calendars = eventStore.calendarsForEntityType(EKEntityTypeReminder)

    if(yourReminderCalendar == nil) {
        for calendar in calendars {
            if calendar.title == "Your Title" {
                yourReminderCalendar = (calendar as EKCalendar)
                break
            }
        }

        if(yourReminderCalendar == nil) {
            yourReminderCalendar = EKCalendar(forEntityType: EKEntityTypeReminder, eventStore: eventStore)
            yourReminderCalendar!.title = "Your Title"
            yourReminderCalendar!.source = eventStore.defaultCalendarForNewReminders().source
            var error: NSError?

            if(eventStore.saveCalendar(yourReminderCalendar, commit: true, error: &error)) {
                println("reminder cal saved")
            }
            else {
                //HANDLE REMINDER ERROR
            }
        }
    }
}

您需要检查授权:

代码语言:javascript
复制
    func verifyUserEventAuthorization() {
    switch EKEventStore.authorizationStatusForEntityType(EKEntityTypeReminder) {
    case .Authorized:
        ...
    case .Denied:
        ...
    case .NotDetermined:
        eventStore.requestAccessToEntityType(EKEntityTypeReminder, completion:
            { [weak self](granted: Bool, error: NSError!) -> Void in
                if granted {
                    ...
                }
                else {
                   ...
                }
        })
    case .Restricted:
        ...
    }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29286359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档