Uiview scroll with webview

2019-01-20 07:10发布

I have a webpage in WkWebview, and in the webpage there is rect region where I want to put a UIView playing live movie. I've made the webview and uiview, but I cannot figure out how to make the uiview's position to the rect region. That's to say, when user scroll the webview, the uiview scroll also scrolls. It seems the uiview is a a part of webpage. How can I fix the uiview to webpage in webview?

Thanks for any help.

2条回答
对你真心纯属浪费
2楼-- · 2019-01-20 07:31

Finally I solved this by use javascript to get the regin location of webpage. Then set the UIView to that location.

Here is the code, in the webpage the regin div has tag movie, and the uiview has 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]
    }
}
查看更多
在下西门庆
3楼-- · 2019-01-20 07:37

For this can you go to storyboard and see if the uiview is inside the view or not and if then drag it outside and try to set its frame in property console because if you drag and drop to set uiview frame it will be gone in subview of your uiwebview

Hope it will help you

查看更多
登录 后发表回答