【问题标题】:How to share multiple file via UIDocumentInteractionController?如何通过 UIDocumentInteractionController 共享多个文件?
【发布时间】:2014-12-26 10:16:40
【问题描述】:

我正在尝试将多个文件共享到Facebookmailgoogle driverwhatsapp

我可以通过UIDocumentInteractionController分享一个文件,如下代码:

    NSString *filePath = [NSString stringWithFormat:@"%@/%@", directory, [fileList objectAtIndex:selectedIndexPath.row]] ;
    url = [NSURL fileURLWithPath: filePath] ;

    documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:url];
    [documentInteractionController setDelegate:self];
    documentInteractionController.UTI = @"net.whatsapp.image";
    [documentInteractionController presentOptionsMenuFromRect:CGRectZero inView:self.view animated:YES];

如何在不使用UIActivityViewController的情况下通过UIDocumentInteractionController共享多个文件?

如果使用NSMutableArray,并添加url的多个对象。如何将NSMutableArray设置为UIDocumentInteractionController

提前致谢。

【问题讨论】:

    标签: ios objective-c facebook


    【解决方案1】:

    要共享多个文件,您可以使用 UIActivityViewController。

    UIImage *image = [UIImage imageWithCGImage:self.imgView.image.CGImage];
    
    NSArray* dataToShare = @[image, image2, image3];  // Any data you want to share.
    
    UIActivityViewController* activityViewController =
    [[UIActivityViewController alloc] initWithActivityItems:dataToShare
                                      applicationActivities:nil];
    [self presentViewController:activityViewController animated:YES completion:nil];
    

    这可能会对你有所帮助。

    【讨论】:

    • 那么UIDocumentInteractionController不能共享多个文件?
    • 根据文档“文档交互控制器以及委托对象为管理用户与本地系统中的文件的交互提供应用内支持。例如,电子邮件程序可能使用此类允许用户预览附件并在其他应用程序中打开它们。使用这个类来呈现一个适当的用户界面来预览、打开、复制或打印指定的文件。因此,使用 UIDocumentInteractionController 只能在两个应用程序之间共享一个文件。
    • 对我来说,建议的 UIActivityViewController 方法在 iOS 8.4 中工作得很好,可以将多个文件作为电子邮件附件共享。但是,某些应用程序图标(如 Dropbox)仅在共享单个文件时出现。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 2021-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-28
    相关资源
    最近更新 更多