Accéder au contenu principal

Sélecteur de fichier pour exporter un fichier avec MacCatalyst

Lorsque l'on gère des fichier sous IOS, on utilise généralement UIDocumentInteractionController pour exporter vers n'importe où le fichier.
Avec MacCatalyst cela ne fonctionne pas et il vaut mieux utiliser UIDocumentPickerViewController en mode ExportToService.

 NSURL *url = [NSURL fileURLWithPath:file];


#if TARGET_OS_MACCATALYST


 UIDocumentPickerViewController *browser = [[UIDocumentPickerViewController alloc] initWithURL:url inMode:UIDocumentPickerModeExportToService];

 assert(browser);

 browser.modalPresentationStyle = UIModalPresentationFormSheet;

 browser.directoryURL = [NSURL fileURLWithPath:NSHomeDirectory()];

 [self presentViewController:browser animated:YES completion:nil];


#else


 documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:url];

 assert(documentInteractionController);

 documentInteractionController.delegate = self;

 CGRect frame = [sender convertRect:CGRectMake(0, 0, sender.frame.size.width, sender.frame.size.height) toView:self.view];

 [documentInteractionController presentOptionsMenuFromRect:frame inView:self.view animated:YES];


#endif

Commentaires