WKWebView 实例可以在加载时显示网页吗?
Posted
技术标签:
【中文标题】WKWebView 实例可以在加载时显示网页吗?【英文标题】:Can WKWebView instance show webpage while it is loading? 【发布时间】:2017-06-20 10:39:24 【问题描述】:我正在使用 WKWebView 浏览特定网站。
WKWebView 实例通过 URL 使用方法 load(_ request: URLRequest) -> WKNavigation?
加载网站的初始页面直到加载请求未完成,我看到白屏。 WKWebView 可以在网页的其余部分正在加载时显示网页的已加载部分吗?
UIWebView 能做到这一点吗?
【问题讨论】:
我认为这取决于网络是否支持渐进式加载,而不是 WKWebView 本身? @Tj3n,你的意思是网页本身吗?不知道是否支持这个功能。这不是我的网站。我该如何检查? 【参考方案1】:如果白屏是您的问题,我建议您在 webView 上显示自定义 进度指示器或在 webView 上显示一些动画视图。
加载完成后隐藏进度指示器。
在以下位置开始您的动画:
optional func webView(_ webView: WKWebView,
didStartProvisionalNavigation navigation: WKNavigation!)
//Start Progress indicator animation
结束/隐藏您的动画/进度视图:
optional func webView(_ webView: WKWebView,
didFinish navigation: WKNavigation!)
//Stop Progress indicator animation
【讨论】:
【参考方案2】:在我的情况下,当我将委托 WKWebViewNavigationDelegate 添加到 WKWebview 和函数时,渐进式加载开始工作
func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!)
如果没有添加这个函数,在所有情况下,在所有内容下载之前网页都没有渲染
【讨论】:
以上是关于WKWebView 实例可以在加载时显示网页吗?的主要内容,如果未能解决你的问题,请参考以下文章
android中webview 怎么实现网页加载时显示加载进度
iOS:当 WKWebView 获取运动传感器时显示一个白色方块
Forge Viewer - 我们可以在加载的模型上进行选择/突出显示并保存在数据库中,以便我们可以在下次用户加载时显示该选择吗?
android中webview 怎么实现网页加载时显示加载进度?