Adobe PDF链接don';t在运行IOS 13.o、13.1.2和13.2 beta版的已编译Swift 5中打开,但在所有IOS版本中打开<;13

Adobe PDF链接don';t在运行IOS 13.o、13.1.2和13.2 beta版的已编译Swift 5中打开,但在所有IOS版本中打开<;13,swift,hyperlink,ios13,Swift,Hyperlink,Ios13,我用AdobeAcrobat或Omnigraffle(导出为pdf格式)制作了几个包含超链接的pdf。我的swift 5应用程序中编译的两个PDF都有链接,可以在IOS 13.0下的所有系统中通过点击iPhone打开。现在,通过点击或按下超链接,我编译的Swift 5应用程序中的iOS 13.0 13.1.2或13.2 beta版中没有相同的pdf链接可用。但是,它们都在iOS

我用AdobeAcrobat或Omnigraffle(导出为pdf格式)制作了几个包含超链接的pdf。我的swift 5应用程序中编译的两个PDF都有链接,可以在IOS 13.0下的所有系统中通过点击iPhone打开。现在,通过点击或按下超链接,我编译的Swift 5应用程序中的iOS 13.0 13.1.2或13.2 beta版中没有相同的pdf链接可用。但是,它们都在iOS<13的情况下工作(ed)

有趣的是,我可以将相同的链接放入Swift 5(或Swift 4)等中的按钮操作中,它们将正确打开链接。似乎与没有点击或按下超链接激活有关,或者超链接在某种程度上不允许执行

对此问题的任何帮助或确认将不胜感激。多谢各位


GT

我在iOS 13和iPadOS上遇到了同样的问题。有一个解决办法:

  • 使您的视图控制器类为PDFViewDelegate
  • 初始化pdfView后,将代理指向视图控制器:

    if #available(iOS 13.1, *) { // Necessary for keeping iOS<13 behavior
        pdfView.delegate = self
    }
    
  • 这将在Safari中打开所有http和https链接,但不会影响内部PDF书签

    func pdfViewWillClick(onLink sender: PDFView, with url: URL) {
        if #available(iOS 13.1, *) {
            UIApplication.shared.open(url)
        }
    }