4

是否可以在 Interface Builder 中使用 QLPreviewController?我正在使用情节提要和 segues,如果也有 QLPreviewController 的表示形式,那就太好了。

4

1 回答 1

6

几周前我问了同样的问题。据我所知,QuickLook 框架没有任何代表。但是以编程方式完成此操作应该不会太难。

我想你有一个 UITableView。然后QLPreviewControllerDataSource在您的标头中实现,并在您的实现中使用以下两种方法:

- (NSInteger) numberOfPreviewItemsInPreviewController: (QLPreviewController *) controller;
- (id <QLPreviewItem>) previewController: (QLPreviewController *) controller previewItemAtIndex: (NSInteger) index;

不要为单元设置 segue 并离开情节提要方法。而是在tableView:didSelectRowAtIndexPath:创建 QLPreviewController 的新实例并将其推送到导航控制器的堆栈中。

PreviewController* previewController = [[PreviewController alloc] init];
[previewController setDataSource:self];
[previewController setDelegate:self];
[previewController setCurrentPreviewItemIndex:indexPath.row];
[self.navigationController pushViewController:previewController animated:YES];
于 2012-04-08T14:57:30.093 回答