WebView 显示白页,但事件正在运行

Posted

技术标签:

【中文标题】WebView 显示白页,但事件正在运行【英文标题】:WebView shows a white page but events are working 【发布时间】:2012-03-18 20:39:27 【问题描述】:

当一个 webview 加载完成时,它只显示一个白页。最奇怪的部分是事件(如单击锚点)仍在工作。在我执行此事件并返回(使用返回键)后,webview 被正确呈现。

此行为不会出现在搭载 android 2.3.7 的 HTC Desire 上,但会出现在搭载 Android 4.0.3 的 Asus Transformer Prime 上。

如果我将 Thread.sleep(10000) 放入 onPageFinished() 页面可见 10 秒但随后变为白色,则事件仍在工作。

Activity 是 Launcher 活动并扩展了自定义基础活动。我的应用程序中的每个活动都扩展了这个基本活动。基本活动检测用户是否被授权并显示需要登录活动。当我在显示登录活动后按下后退按钮时,启动器活动将显示上述行为。

不知道现在该怎么解决这个问题......

最简单的方法是说它是Android中的一个错误。但这并不能解决我的问题。有什么建议可以解决这种情况吗?

【问题讨论】:

如果只显示白色空白页,你怎么能点击anchore? 这是一个好问题,阿里。显然 WebView 处理 html 权利,但不绘制它。事实上,webview 绘制了一秒钟,但之后将其清除。如果我添加 Thread.sleep(10000) 它可以看到 10 秒。 可能是一些java脚本产生了问题?加载页面后运行的一些脚本! ,尝试删除所有脚本 这应该没有意义,因为 webview 大部分时间都可以工作,但值得一试。 删除 javascript 并不能解决问题。 【参考方案1】:

我已经有同样的问题几个小时了,解决这个问题的方法是从我的 WebView 构造函数调用中删除以下设置:

this.setLongClickable(true);

我不知道为什么会这样。

【讨论】:

很高兴分享对你有用的东西。更好的办法是找出问题的根本原因。

以上是关于WebView 显示白页,但事件正在运行的主要内容,如果未能解决你的问题,请参考以下文章

android webview显示空白页

在我的 Webview 在 Android Webview App 中加载之前获取白页

WebView 中的 Paypal = 白页(不是 https 问题)

Xamarin。 WebView Progres

WebView 显示黑屏

为表单字段显示软键盘时,Android 4.3 Webview 不滚动