我有一个为iPad/iPhone编写的iOS应用程序。我正在生成一个用于打印的PDF报告,并且一切正常,应用程序将在QLPreviewController中成功打开生成的PDF,我正在使用以下代码打开预览:
// open a preview of the PDF File.
QLPreviewController* preview = [[QLPreviewController alloc] init];
preview.dataSource = self;
[self presentModalViewController:preview animated:YES];在预览中打开PDF后,预览工具栏上将显示标准按钮。这两个按钮分别是“完成”和“动作按钮”,用于在其他应用程序中打印/打开pdf。
我包含了我正在谈论的内容的截图。

我的问题是,有没有一种快速的方法来禁用/禁止“在iBooks中打开”和“在...中打开”选项?我想只允许用户打印pdf。我知道我可以在不打开预览的情况下直接发送pdf进行打印,但我希望允许用户在打印之前预览pdf。因此,实际上,我只需要禁用“打开位置”选项。谢谢!
发布于 2012-04-14 09:11:11
是的,这是可以做到的。您需要创建QLPreviewController的子类,并在viewWillAppear和viewDidAppear中将您自己的按钮分配给self.rightBarButtonItem。此外,您的类应该侦听UIApplicationDidEnterBackgroundNotification和UIApplicationWillEnterForegroundNotification,并在这些通知的回调方法中执行相同的操作。
您可以使用UIPrintInteractionController复制打印按钮功能。
https://stackoverflow.com/questions/10147158
复制相似问题