带有 webview 的 UIView 滚动
Posted
技术标签:
【中文标题】带有 webview 的 UIView 滚动【英文标题】:Uiview scroll with webview 【发布时间】:2017-04-21 02:44:52 【问题描述】:我在 WkWebview 中有一个网页,在网页中有一个矩形区域,我想在其中放置 UIView 播放实况电影。我已经制作了 webview 和 uiview,但我无法弄清楚如何将 uiview 的位置设置为 rect 区域。也就是说,当用户滚动 webview 时,uiview 滚动也会滚动。 uiview 似乎是网页的一部分。如何在 webview 中修复 uiview 到网页?
感谢您的帮助。
【问题讨论】:
【参考方案1】:为此,您可以转到情节提要并查看 uiview 是否在视图内,然后将其拖到外部并尝试在属性控制台中设置其框架,因为如果您拖放以设置 uiview 框架,它将消失在您的 uiwebview 的子视图中
希望对你有帮助
【讨论】:
我将uiview添加到webview.addsubview,并且uiview不随webview滚动。 检查我的答案,我现在解决了。非常感谢。【参考方案2】:最后我通过使用 javascript 来获取网页的注册位置来解决这个问题。然后将 UIView 设置为该位置。
代码如下,网页中的regin div有标签movie,uiview有name player。
func scrollViewDidScroll(_ scrollView: UIScrollView)
self.wk.evaluateJavaScript("var rect = document.getElementById('movie').getBoundingClientRect();[rect.left, rect.top];")
(result, error) -> Void in
print(result)
self.player.view.frame.origin.x = (result as! Array)[0]
self.player.view.frame.origin.y = (result as! Array)[1]
【讨论】:
以上是关于带有 webview 的 UIView 滚动的主要内容,如果未能解决你的问题,请参考以下文章
带有webgl的ios8 webview =在网络应用程序中平滑滚动?
带有嵌入式 UIWebView 的 UIScrollView 在按住后不滚动