停止WebView呈现,直到页面完全加载

时间:2014-01-05 00:06:48

标签: android user-interface webview rendering

我正在使用正在使用WebView的应用。不幸的是,当用户点击链接时,当页面加载时,整个WebView区域“闪烁”直到加载完成。还有一个问题 - 我正在使用一个JavaScript,它在加载结束时反转页面的颜色 - 所以直到它完全加载,颜色是正常的,所以再次 - 闪烁。

所以,我想做的是“停止”渲染WebView,直到页面完全加载 - 然后,恢复渲染,这样它就不会闪烁。怎么做?

注意:我不想修改网页来实现我想要的。我必须修改WebView行为。

还有一个注意事项,因为它可能不太清楚:通过“停止渲染”我的意思是“连续显示当前渲染的页面,直到新的页面完全加载”:)

2 个答案:

答案 0 :(得分:1)

首先将布局背景颜色设为白色,然后使 WebView不可见

使用 AsyncTask 后,将您的webview 加载到doInBackground ,当它完成 onPostExecute 时,让您的 webview可见

因此用户将在postexcute

完全加载后首先看到白色布局,然后看到可见的webview

抱歉,如果我的英语不好

答案 1 :(得分:0)

您可以实现自定义WebView,并覆盖它的invalidate()方法,直到页面完全加载为止。