首页 > 解决方案 > iOS WKWebView 在图像上查看和弹出

问题描述

最近我一直在尝试让 Peek And Pop 与我的 WKWebView 一起工作。我使用它的用例是我的应用程序中的 RichText 评论部分。但是因为已经对 WebView 进行了大量定制,所以我设置了一个最小的可重现示例

到目前为止,我发现了以下内容:

  1. WKWebView的allowLinkPreview属性应该为true,默认为true。
  2. 您应该实现一个自定义WKUIDelegate,其中:
    • webView(_ webView: WKWebView, shouldPreviewElement...如果要显示 Peek and Pop,则应返回 true。
    • webView(_ webView: WKWebView, previewingViewControllerForElement...应该返回视图控制器以显示 pop 和 peek。
    • webView(_ webView: WKWebView, commitPreviewingViewController...一旦 peek and pop 完成,您应该将视图推送到导航控制器或在此处以模态方式呈现。

我想要达到的效果显示在这里

问题:目前出现的问题是我确实从 shouldPreviewElement 返回 true,但是第二个方法 previewViewControllerForElement 从未按预期调用。我还查看了其他 Pop 和 Peek 实现(在 WKWebView 之外,它们的工作方式类似并且没有这个问题)。

标签: iosuikitwebkitwkwebviewforce-touch

解决方案


推荐阅读