2017-05-25 2 views
-5

J'ai fait une application qui va chercher tous les événements à travers EventKit mais le code que j'écrit ne fonctionne que sur le titre particulier:Comment puis-je inclure tous les calendriers de mon téléphone?

func readEvents() { 


    let eventStore = EKEventStore() 
    let calendars = eventStore.calendars(for: .event) 
    for calendar in calendars { 
     if calendar.title == "Work"{ 
      //let predicate = eventStore.predicateForReminders(in: [calendar]) 
      let oneMonthAgo = NSDate(timeIntervalSinceNow: -30*24*3600) 
      let oneMonthAfter = NSDate(timeIntervalSinceNow: +30*24*3600) 
      let predicate = eventStore.predicateForEvents(withStart: oneMonthAgo as Date, end: oneMonthAfter as Date, calendars: [calendar]) 

      var events = eventStore.events(matching: predicate) 
      for event in events { 

       titles.append(event.title) 
       print([titles]) 
    } 
    } 
} 
} 

Cela ne fonctionne que pour des événements qui sont dans le calendrier « travail », comment puis-je inclure tous les événements quel que soit le calendrier?

Répondre

0

Retirez simplement cette partie?

if calendar.title == "Work" 
1

Vous avez tous vos calendriers dans la baie calendars. Dans l'itération, vous parcourez tout mais avez une condition pour obtenir seulement des informations supplémentaires si le calendrier est appelé Travail. Supprimez le if-statement et vous obtiendrez des informations pour tous les calendriers.

0

Est-ce que ces options vous permettent de sélectionner le calendrier auquel vous souhaitez ajouter l'événement ou est-ce que cela s'applique à tous les calendriers?