J'essaie d'intégrer la fonctionnalité de glisser iOS 11 glisser & dans une application, à partir de Xcode 9 bêta. Je suis intéressant sur la création d'un NSItemProvider qui peut être compris par l'application de calendrier standard. Mon glisser commence à partir d'un UITableView, donc une seule méthode dragDelegate implémentée.iOS 11 glisser et déposer: tomber sur l'application calendrier standard
Jusqu'à présent, j'ai essayé ce qui suit:
let text = "Rendez-vous at \(clientName)"
let data = text.data(using: .utf8)
let itemProvider = NSItemProvider()
itemProvider.registerDataRepresentation(forTypeIdentifier: kUTTypeCalendarEvent as String, visibility: .all) { completion in
completion(data, nil)
return nil
}
let dragItem = UIDragItem(itemProvider: itemProvider)
Et aussi essayé en utilisant l'identifiant de type kUTTypePlainText. Pas de chance, l'application de calendrier ne enregistre pas la baisse.
Je ne trouve aucune documentation officielle à ce sujet. J'espère que l'application de calendrier recherche des données de calendrier standard, et cela ne se limite pas aux applications standard communiquant les unes avec les autres. Par exemple, vous pouvez faire glisser du texte à partir de l'application Notes et le déposer dans le calendrier pour créer un événement.
Quelqu'un sait ce que je pourrais essayer?
Merci d'avance.
Wow, quelle réponse géniale. Je vais tester cela aujourd'hui et revenir avec la validation. Merci beaucoup pour le temps que vous avez pris en donnant tous ces détails. –
Hey Lucas, j'ai testé ton exemple, et ça marche super bien. Cependant, il y a une chose qui me dérange. Si je ne mets pas de valeur DTSTART, la chute échoue. Cependant si je mets une valeur DTSTART, la goutte réussit, mais ignore l'endroit dans le calendrier quand l'article est abandonné. Ce type de défait le but de laisser tomber l'élément visuellement à la date et l'heure que je veux créer l'événement. Une idée ? –