2017-07-06 100 views

回答

2

我一直在試圖找出了幾個小時的解決方案。 我提出了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) 
    } 
} 

在擴展應用程序的底線,你會看到 「創建PDF」。 Screenshot InstantMarkup0

P.S.

正如你可以看到以下屏幕截圖,Apple使用QLPreviewController。 我試過呈現QLPreviewController,但它沒有顯示Instant Markup按鈕。 這可能是Apple稍後會提供給我們所需的API,但我對此有所懷疑。 Opened QLPreviewController from UIActivityViewController Opened QLPreviewController from UIActivityViewController. Instant Markup mode.

相關問題