【问题标题】:WKWebView dynamic sizing issuesWKWebView 动态调整大小问题
【发布时间】:2015-01-05 18:44:35
【问题描述】:

在我目前正在开发的一个应用程序中,UIWebView 用于显示 PowerPoint 等文件。 Web 视图右侧有一个抽屉,可以通过UIPanGestureRecognizer 打开和关闭。当您调整大小,然后打开或关闭时,Web 视图的右侧会出现一个黑色伪影,与此问题中看到的完全相同:Black bar appearing in UIWebview when device orientation changes

在这个问题和 iOS 8 中的 PDF 呈现黑色背景的问题之间,我决定尝试WKWebView。这没有任何问题,但是当 Web 视图的宽度动态变化时(右约束绑定到平移手势),Web 视图中的内容非常慢。 Web 视图要么不调整大小,要么像它那样非常不稳定/块状。使用 UIWebView 时不存在此问题。有没有人有任何指针可以解决UIWebView 和那个黑色工件的问题,或者为什么WKWebView 表现如此糟糕?

【问题讨论】:

    标签: ios objective-c uiwebview wkwebview


    【解决方案1】:

    回复:WKWebView

    我的猜测是 webview 试图在调整框架时多次重新渲染其内容。这可能会导致不稳定,可能您对此无能为力。 (不确定)

    您可以“作弊”的一种方法是在调整其框架之前拍摄 webview 的快照,并将其放置在 webview 的顶部。

    将 webview 的 hidden 属性设置为 YES,希望在调整框架时终止重新渲染。

    将快照连接到平移手势识别器,当手势结束时,为 webview 提供最后一帧并将hidden 设置回NO

    此时,您可以删除快照(可能带有 alpha 动画),并且 webview 应该只需要重新渲染其内容一次。

    快照的外观和 webview 的最终外观之间可能会有差异,但它应该是可行的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多