PDFKit 手势问题在升级到 IOS 13 后停止工作

Posted

技术标签:

【中文标题】PDFKit 手势问题在升级到 IOS 13 后停止工作【英文标题】:PDFKit gestures issue stop working after upgrade to IOS 13 【发布时间】:2019-10-08 13:31:56 【问题描述】:

我为 iPad 开发了一个应用程序,它使用 Apple PDFKit 来显示 PDF 并添加注释。 该应用程序在所有 ios 系统(从 11.0 到最后 12 vrs)上都能正常工作。 现在在安装了 IOS 13 的设备上,该应用程序出现手势问题,没有什么可解决的。 关于可能发生什么的任何想法以及是否可以通过新版本的 IOS 13(可能是 13.2....)来解决这个问题? 谢谢!

【问题讨论】:

【参考方案1】:

这里是iOS升级到13后调用PDFView touches cancelled的解决方法+ 需要添加这一行.. self.pdfview.documentView?.gestureRecognizers?.removeAll()

【讨论】:

如果您解决了这个问题,请帮我看看我的问题吗?***.com/questions/58609831/... 非常感谢 太棒了!!!!为了保持向后兼容性,我添加了: if #available(iOS 13, *) pdfView.documentView?.gestureRecognizers?.removeAll() 【参考方案2】:

就我而言,问题在于 Xcode 版本 11.1。将您的 mac OS 更新到 10.15.1,将 Xcode 更新到 11.2。我希望它能解决这个问题。

祝你好运!!

【讨论】:

【参考方案3】:

我很同情你,并已竭尽全力寻找答案。很明显,运行 IOS 13 及包括 13.2 beta 的模拟器和 iPhone 不响应 PDF 手势(即点击超链接不会激活超链接以获取/显示 URL。IOS 12.4 及以下版本都可以正常工作。

这就是我发现的:

1) 使用 Adob​​e 或其他 pdf 生成器(如 omnigraffle 或从互联网下载的任何 pdf)制作的所有 PDF 文档都会出现此缺陷。

2) 您可以获取无响应的 pdf(已在 Swift 5 等中编译)并将其导出到 Notes,其链接将有效,但是一旦显示在在 IOS 13 13.1.2 或 13.2 beta 下运行的已编译 Swift 应用程序中链接不再响应。将 IOS 更改回 12.4 后一切正常。

3) 有趣的是,如果您使用其中一个无响应链接的 url 并在 Swift 中创建一个按钮并要求其操作以显示该 url 并编译应用程序并按下该按钮,则该 URL/链接将正确显示。

我和 omnigraffle 的工作人员一样相信这是 Adob​​e 和 Apple 之间需要解决的问题。

【讨论】:

@Carlo Cicchi 你有什么解决办法 如果您解决了这个问题,请帮我看看我的问题吗?***.com/questions/58609831/... 非常感谢 @MidDev 如果你解决了这个问题,请帮我看看我的问题吗?***.com/questions/58609831/... 非常感谢

以上是关于PDFKit 手势问题在升级到 IOS 13 后停止工作的主要内容,如果未能解决你的问题,请参考以下文章

iOS PDFKit 内存泄漏

使用 Swift 5 - PDFKit 在 iOS 中编辑和保存现有的 pdf 文档

无法调用选择器和手势委托 iOS 13.2

iOS 11 PDFKit 墨水注释 - 无法填充 UIBezierPath

在 iOS 上使用 PDFKit.PDFView 打开 PDF

Xcode 12 和 iOS 14 中的手势问题