Texte ouvert dans Pages-Swift

Dans mon application Swift 2, un user crée une string de text via un champ de text puis la partage avec une autre application. À l'heure actuelle, je ne peux que partager le text en tant que file .txt, ce qui ne donne pas l'option Open In Pages lorsque j'ouvre la boîte de dialog de partage du système. Comment puis-je faire en sorte que l'user dispose d'une option pour ouvrir son text saisi en tant que document dans Pages?

Dois-je convertir le text en format .docx ou .pages? Et si oui, comment?

L'astuce consiste à save le file localement en tant que file .txt, puis à l'ouvrir à l'aide de UIDocumentInteractionController . Voici un exemple de code complet:

 import UIKit class ViewController: UIViewController, UIDocumentInteractionControllerDelegate { var interactionController: UIDocumentInteractionController? func openInPages(body: Ssortingng, title: Ssortingng) throws { // create a file path in a temporary directory let fileName = "\(title).txt" let filePath = (NSTemporaryDirectory() as NSSsortingng).ssortingngByAppendingPathComponent(fileName) // save the body to the file try body.writeToFile(filePath, atomically: true, encoding: NSUTF8SsortingngEncoding) // for iPad to work the sheet must be presented from a bar item, resortingeve it here as below or create an outlet of the Export bar button item. let barButtonItem = navigationItem.leftBarButtonItem! // present Open In menu interactionController = UIDocumentInteractionController(URL: NSURL(fileURLWithPath: filePath)) interactionController?.presentOptionsMenuFromBarButtonItem(barButtonItem, animated: true) } } 

Appelez openInPages partir de n'importe où dans votre code (comme lorsque l'user appuie sur un élément de la barre Export ):

 openInPages("This will be the body of the new document", title: "SomeTitle") 

c'est le résultat