系統的日曆和提醒事項的呼叫與互動(swift)

2022-08-29 14:39:18 字數 3406 閱讀 4153

calshow:」)!)

")!)

(1

)、建立事件驅動器:

let eventstore =ekeventstore()(2

)、授權訪問日曆:

eventstore.requestaccesstoentitytype(.event) (3

let

event =ekevent(eventstore: self.eventstore)

//事件名稱

event.title = "提醒"

//事件名稱

event.notes = "

備註你妹"//

事件備註

//事件地點

event.location = "

東昇科技園"//

這個設定為true 開始結束時間就不會顯示

event.allday = true

//開始時間

event.startdate =nsdate()

//結束時間

event.enddate = nsdate(timeintervalsincenow: 3600

)event.addalarm(ekalarm(relativeoffset: -60*15)) //

設定提醒

//必須設定:系統的日曆

event.calendar =self.eventstore.defaultcalendarfornewevents(4

)、新增事件:do

catch

2、向事項中新增事件:

(1

)、建立事件驅動器:

let eventstore =ekeventstore()(2

eventstore.requestaccesstoentitytype(.reminder) (3

let reminde =ekreminder(eventstore: self.eventstore)

//事項名稱

reminde.title = "

測試提醒"//

事項地點

reminde.location = "

東昇科技園"//

事項等級:1-9,1最高

reminde.priority = 1

reminde.notes = "

測試測試測試測試測試"//

事項開始事件

let start =nsdatecomponents()

start.day = 5

start.year = 2016

start.month = 9

start.hour = 22

start.minute = 30

start.timezone =nstimezone.systemtimezone()

reminde.startdatecomponents =start

//事項結束事件

let end =nsdatecomponents()

end.day = 8

end.year = 2016

end.month = 9

end.hour = 23

end.minute = 30

end.timezone =nstimezone.localtimezone()

reminde.duedatecomponents =end

//說明:

設定了結束時間,在事項中只會顯示結束時間而不會顯示開始時間

reminde.addalarm(ekalarm(relativeoffset: -60*15)) //

新增提醒時間

=self.eventstore.defaultcalendarfornewreminders()(4

)、新增事項:do

catch

1、查詢日曆事件:

(1

)、建立事件驅動器:

let eventstore =ekeventstore()(2

)、授權訪問日曆:

eventstore.requestaccesstoentitytype(.event) (3

)、查詢事件:

1)、建立查詢條件

let predicate = self.eventstore.predicateforevents(withstart: date(timeintervalsincenow: -3600

), end: date(), calendars: nil)

2)、利用條件進行查詢:由於是執行緒同步,耗時長,建議在其他執行緒操作

查詢方法1:

let events =self.eventstore.events(matching: predicate)

查詢方法2:每找到乙個就會呼叫閉包

self.eventstore.enumerateevents(matching: predicate,

using: )

(1

)、建立事件驅動器:

let eventstore =ekeventstore()(2

eventstore.requestaccesstoentitytype(.reminder) (3

)、查詢事件:

1)、建立查詢條件

///獲取所有的事項條件

let pre0 = self.eventstore.predicateforreminders(in

: nil)

//指定時間內未完成的事項條件

let pre1 = self.eventstore.predicateforincompletereminders(withduedatestarting: date(timeintervalsincenow:3600), ending: date(timeintervalsincenow:3600

), calendars: nil)

//指定時間內已完成的事項條件

let pre2 = self.eventstore.predicateforcompletedreminders(withcompletiondatestarting: date(timeintervalsincenow:-3600), ending: date(timeintervalsincenow:3600

), calendars: nil)

2)、利用條件進行查詢:由於是執行緒同步,耗時長,建議在其他執行緒操作

///獲取事項

let _ = self.eventstore.fetchreminders(matching: pre0, completion: )

1、刪除日曆事件:

do

catch

do

catch

呼叫中心系統的學費,還要交多少?

最近,有個合作夥伴,向我吐槽。說是好好服務的乙個客戶,被別人用其他系統撬走了。他說,他又沒掙多少,服務這麼到位,為啥會這麼容易被撬走呢?我的經驗告訴他,這個客戶多半還是會回來的。咋一看,相信很多人以為我這是在安慰。但,這還真是實情。有人總結過,國內的經營環境,沒有一分錢買不走的忠誠度。同時,也有人總...

函式呼叫與系統呼叫的區別

函式庫呼叫 系統呼叫 在所有的ansi c編譯器版本中,c庫函式是相同 的各個作業系統的系統呼叫是不同 的它呼叫函式庫 中的一段程式 或函式 它呼叫系統核心 的服務與使用者程式 相聯絡是作業系統 的乙個入口點 在使用者位址空間執行 在核心位址空間執行 它的執行時間屬於 使用者時間 它的執行時間屬於 ...

系統呼叫和函式呼叫的區別

作業系統服務的程式設計介面 通常由高階語言編寫 c或c 程式訪問通常通過高層次 的api介面 c標準庫的庫函式 而不是直接進行系統呼叫 每個系統呼叫對應乙個系統呼叫編號 系統呼叫 1.使用int和iret指令,核心和應用程式使用的是不同的堆疊,因此存在堆疊的切換,從使用者態切換到核心態,從而可以使用...