有没有人可以在不使用UITableView的情况下使用QuickLook打开一个(最好是但不一定是pdf)文件的资源?
我确实有这个使用QuickLook的例子,但它使用了一个我需要摆脱的列表视图。
http://robsprogramknowledge.blogspot.com/2011/02/quick-look-for-ios_21.html
发布于 2011-04-30 06:23:56
我不确定你打算如何设计你的UI来打开一个文件。我已经使用了几种不同的方法,所以我将抛出一些想法。UITableView是处理大量文件的理想选择。通用滚动视图也可用于大量文件。我为一个只生成一两个文件的应用程序使用了一个警告视图。您也可以使用带有文档图标的视图,如iPad邮件应用程序。要获取文档图标,请使用UIDocumentInteractionController。WWDC2010 DocInteraction示例代码深入介绍了如何使用UIDocumentInteractionController。
至于打开文件,Quick Look框架让这一点变得很容易。一个简单的、自包含的解决方案是将QLPreviewController子类化。然后,您的子类需要符合QLPreviewControllerDataSource协议和可选的QLPreviewControllerDelegate协议。接下来,向它传递一个指向您的文件的NSURL数组。您可以通过像-initWithFiles:(NSArray *)files这样的初始化器或通过设置器来完成此操作。从这里开始,-previewController:previewItemAtIndex:只需要对数组进行索引,就可以获得要显示的适当文件。-numberOfPreviewItemsInPreviewController:只需要返回数组的大小。一旦你完成了这个类,你就可以使用任何你喜欢的UI设计来推动这个视图或者以模态的方式呈现它。
希望这篇文章比你读过的我的教程更清楚。
编辑:
我已经在Github上发布了一些代码,可能会对你有所帮助。如上所述,我已经创建了一个file previewer class。我还发布了一个直接使用QLPreviewController的demo app。
https://stackoverflow.com/questions/5795519
复制相似问题