Swift カレンダー、イベント追加、アラーム設定
「Swift カレンダー、イベント追加、カレンダー(EKCalendar)設定」の続き
イベントにアラーム設定
EKAlarm.init(absoluteDate:)を使いたくなるが、
純正カレンダーアプリで見る「イベントの予定時刻」「5分前」等にするには、
EKAlarm.init(relativeOffset:)を使用する。
アラームを発生するという意味では同じだが、純正カレンダーアプリでの表示が違う。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | let event = EKEvent ( eventStore : eventStore ) event . title = self . titleText . text event . startDate = self . startDatePicker . date event . endDate = self . endDatePicker . date let calendar = self . calendars [ calendarPicker . selectedRow ( inComponent : 0 )] event . calendar = eventStore . calendar ( withIdentifier : calendar !. calendarIdentifier ) if allday == true { event . isAllDay = true } let alarmEvent = EKAlarm ( relativeOffset : 0 ) let alarm5Minute = EKAlarm ( relativeOffset : 60 * - 5 ) event . alarms = [ alarmEvent , alarm5Minute ] do { try eventStore . save ( event , span : . thisEvent ) self . viewController ?. pageUpsert () self . viewController ?. updateDays () self . dismiss ( animated : true , completion : nil ) } catch { let nserror = error as NSError print ( nserror ) } |