如何以编程方式在ios 11中打开pdf标记
问题描述:
答
我一直在试图找出了几个小时的解决方案。 我提出了UIDocumentInteractionController,SFSafariViewController,UIActivityViewController,QLPreviewController。
而现在,没有办法以编程方式调用Instant Markup。
唯一附近的解决办法是用UIActivityType.markupAsPDF (Documentation link)提出UIActivityViewController
func showMenu()
{
if let pdfUrl = Bundle.main.url(forResource: "Martin", withExtension: "pdf") {
let activityController = UIActivityViewController(activityItems: [pdfUrl], applicationActivities:nil)
ctra.excludedActivityTypes = [
UIActivityType.postToFacebook,
UIActivityType.postToTwitter,
UIActivityType.postToWeibo,
UIActivityType.message,
UIActivityType.mail,
UIActivityType.copyToPasteboard,
UIActivityType.assignToContact,
UIActivityType.saveToCameraRoll,
UIActivityType.addToReadingList,
UIActivityType.postToFlickr,
UIActivityType.postToVimeo,
UIActivityType.postToTencentWeibo,
UIActivityType.airDrop,
UIActivityType.openInIBooks,
]
// These activity types shouldn't be excluded
// UIActivityType.print,
// UIActivityType.markupAsPDF
self.present(activityController, animated: true, completion: nil)
}
}
P.S.
正如你可以看到以下屏幕截图,Apple使用QLPreviewController。 我试过呈现QLPreviewController,但它没有显示Instant Markup按钮。 这可能是Apple稍后会提供给我们所需的API,但我对此有所怀疑。