UIActivityViewController与ios中的UIDocumentInteractionController

use*_*370 12 iphone sharing ios uidocumentinteraction uiactivityviewcontroller

我刚才读了一些文章UIActivityViewControllerUIDocumentInteractionControlleriOS中,但我如何,因为双方似乎都一样用起来很困惑.

那么,我什么时候使用 UIActivityViewControllerUIDocumentInteractionController

Open In...和使用有什么区别UIActivityViewController吗?

我对如何使用它们感到非常困惑.请告诉我他们的具体用途.

san*_*ony 21

简而言之,UIDocumentInteractionControllerUIActivityViewController处理应用中的各种其他服务时处理文件.我不是一个批评太多的人,但你至少应该尝试google并至少阅读iOS Developer Docs中的概述.

UIDocumentInteractionController概述:

文档交互控制器与委托对象一起提供应用程序内支持,以管理用户与本地系统中的文件的交互.例如,电子邮件程序可能使用此类来允许用户预览附件并在其他应用程序中打开它们.使用此类可以显示用于预览,打开,复制或打印指定文件的相应用户界面.

在呈现其用户界面之后,文档交互控制器处理支持文件预览和菜单显示所需的所有交互.在某些情况下,对象使用委托来确定如何响应特定命令.例如,要提供复制或打印,必须实现UIDocumentInteractionControllerUIDocumentInteractionControllerDelegate委托方法.

您还可以使用委托参与所呈现的界面中发生的交互.例如,当文件即将被移交给另一个应用程序打开时,会通知代理.有关可在委托中实现的方法的完整说明,请参阅UIActivityViewController协议参考.

UIActivityViewController概述:

UIDocumentInteractionController班是你可以用它来从你的应用程序提供各种服务的标准视图控制器.该系统提供多种标准服务,例如将项目复制到粘贴板,将内容发布到社交媒体网站,通过电子邮件或SMS发送项目等.应用还可以定义自定义服务.

您的应用程序负责配置,显示和关闭此视图控制器.视图控制器的配置涉及指定视图控制器应该在其上操作的数据对象.(您还可以指定应用程序支持的自定义服务列表.)在呈现视图控制器时,必须使用适当的方法为当前设备执行此操作.在iPad上,您必须在弹出窗口中显示视图控制器.在iPhone和iPod touch上,您必须以模态方式呈现它.


Mar*_*rio 4

基本上UIActivityViewController共享数据对象(如字符串或图像),其中UIDocumentInteractionController共享整个文档/文件(例如 PDF)。

  • 取决于:如果您有图像文件,那么是的。如果您拥有的只是 UIImage 的一个实例,那么它就不是一个文件。 (3认同)