谁能指出我使用QuickLook来打开(最好但不一定是pdf)文件而不使用UITableView的资源?
我确实有使用QuickLook的示例,但是它使用了我需要摆脱的listview。
http://robsprogramknowledge.blogspot.com/2011/02/quick-look-for-ios_21.html
最佳答案
我不确定您打算如何设计UI来打开文件。我使用了几种不同的方法,所以我会提出一些想法。 UITableView非常适合大量文件。通用滚动 View 也可以用于大量文件。我为仅生成一个或两个文件的应用程序使用了警报 View 。您还可以使用带有文档图标的 View ,例如iPad Mail应用程序。要获取文档图标,请使用UIDocumentInteractionController
。 WWDC 2010 DocInteraction示例代码深入介绍了如何使用UIDocumentInteractionController
。
至于打开文件,“快速查看”框架使此操作变得容易。一个简单的自包含解决方案是将QLPreviewController
子类化。然后,您的子类需要符合QLPreviewControllerDataSource
协议(protocol)以及可选的QLPreviewControllerDelegate
协议(protocol)。接下来,将指向您文件的NSURL数组传递给它。您可以通过像-initWithFiles:(NSArray *)files
这样的初始化程序或通过setter来实现。从这里,-previewController:previewItemAtIndex:
只需要索引到数组中就可以显示适当的文件。 -numberOfPreviewItemsInPreviewController:
只需要返回数组的大小。完成此类后,您可以使用任何您喜欢的UI设计来推送此 View 或以模态显示。
希望这比您正在阅读的教程更加清楚。
编辑:
我已经在Github上发布了一些可以帮助您的代码。我已经如上所述创建了file previewer class。我还发布了直接使用QLPreviewController
的demo app。
关于iphone - iOS-QuickLook-如何在没有UIScrollView的情况下在QuickLook中打开对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5795519/