Swift - 使用EventKit獲取系統(tǒng)日歷事件,添加事件

首先要在info.plist中申請(qǐng)權(quán)限
字段名:NSCalendarsUsageDescription
屏幕快照 2017-03-15 下午3.00.00.png
import UIKit
//導(dǎo)入頭文件
import EventKit
class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        let eventStore = EKEventStore()
        eventStore.requestAccess(to: .event, completion: {
            granted, error in
            if (granted) && (error == nil) {
                print("granted \(granted)")
                print("error  \(error)")
                
                // 新建一個(gè)事件
                let event:EKEvent = EKEvent(eventStore: eventStore)
                event.title = "新增一個(gè)測(cè)試事件"
                event.startDate = Date()
                event.endDate = Date()
                event.notes = "這個(gè)是備注"
                event.calendar = eventStore.defaultCalendarForNewEvents
                
                do{
                    try eventStore.save(event, span: .thisEvent)
                    print("Saved Event")
                }catch{}
                
                // 獲取所有的事件(前后90天)
                let startDate = Date().addingTimeInterval(-3600*24*90)
                let endDate = Date().addingTimeInterval(3600*24*90)
                let predicate2 = eventStore.predicateForEvents(withStart: startDate,
                                                               end: endDate, calendars: nil)
                
                print("查詢(xún)范圍 開(kāi)始:\(startDate) 結(jié)束:\(endDate)")
                
                if let eV = eventStore.events(matching: predicate2) as [EKEvent]! {
                    for i in eV {
                        print("標(biāo)題  \(i.title)" )
                        print("開(kāi)始時(shí)間: \(i.startDate)" )
                        print("結(jié)束時(shí)間: \(i.endDate)" )
                    }
                }
            }
        })
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

![Uploading 屏幕快照 2017-03-15 下午2.57.22_552844.png . . .]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容