iOS上的UIDocumentInteractionController与QLViewController

iOS上的UIDocumentInteractionController与QLViewController,ios,qlpreviewcontroller,Ios,Qlpreviewcontroller,任何使用过这两个工具包的人都可以评论“有什么区别,什么时候应该使用一个而不是另一个?”我花了几天时间将DocInteraction示例中的代码调整到我自己的应用程序中,我对这两个工具包越熟悉,我就越看不到它们之间的区别: 它们都显示文档 它们都只全屏显示 它们都有“打开”和“打印” 它们都可以从屏幕上的一个小矩形进行缩放 在它们之间切换时,除了工具栏的颜色外,我看不到任何区别 当然,我漏掉了一些东西(或者其他几点是错的)。有什么想法吗?UIDocumentInteractionControl

任何使用过这两个工具包的人都可以评论“有什么区别,什么时候应该使用一个而不是另一个?”我花了几天时间将DocInteraction示例中的代码调整到我自己的应用程序中,我对这两个工具包越熟悉,我就越看不到它们之间的区别:

  • 它们都显示文档
  • 它们都只全屏显示
  • 它们都有“打开”和“打印”
  • 它们都可以从屏幕上的一个小矩形进行缩放
在它们之间切换时,除了工具栏的颜色外,我看不到任何区别


当然,我漏掉了一些东西(或者其他几点是错的)。有什么想法吗?

UIDocumentInteractionController使用QLViewController显示。它允许为委托方法提供额外的钩子。

我想补充一点,尽管DIC可以更好地控制控制器本身如何显示文档,但直接使用QL可以更好地控制视图如何添加到层次结构中。我选择了后者,尽管我仍然保留了一个“僵尸”前者来查询图标等等。我认为这是另一种方式,因为当我使用QLPreviewController时,它在点击共享按钮时崩溃,它与[UIDocumentInteractionController setURL:],/SourceCache/UIKit/UIKit-2380.17/UIDocumentInteractionController.m:960断开