我完全不知道为什么这个HTML在Xamarin内的Android上的WebView中无效。尝试让这些简单的工作成为一种令人兴奋的经历。
HTML源代码如下。我希望屏幕变蓝,但它保持橙色:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>MyTitle</title>
<style>
body {
position: absolute;
top: 0;
bottom: 0;
width: 100%;
height: 100%;
background: orange;
}
.fullScreenDiv {
position: absolute;
top: 0;
bottom: 0;
width: 100%;
height: 100%;
background-color: blue;
}
</style>
</head>
<body>
<div id='myId' class='fullScreenDiv'> </div>
</body>
</html>
我已经研究过的一些事情:
它在Chrome中显示绝对正常。
我正在使用Kitkat,硬件加速已关闭。
“http://www.google.com/”在WebView中加载正常。
我附加了一个远程调试器(https://developer.chrome.com/devtools/docs/remote-debugging#debugging-webviews),看起来身体的计算高度为0px,我认为这是为什么它没有显示。
以下是包含WebView init的代码。
if (Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Kitkat)
{
WebView.SetWebContentsDebuggingEnabled(true);
}
webView = new Android.Webkit.WebView(this.Context);
webView.Settings.JavaScriptEnabled = true;
webView.SetWebViewClient(new Client(this));
webView.SetWebChromeClient(new ChromeClient());
webView.SetLayerType(LayerType.Software, null);
webView.Settings.UseWideViewPort = true;
webView.Settings.LoadWithOverviewMode = true;
webView.LoadUrl("file:///android_asset/View.html");
var x = webView.IsHardwareAccelerated; // returns false
请问任何想法或指示?
答案 0 :(得分:-1)
我们(WizRocket)最近遇到了类似的问题。解决了它。细节在这里 http://blog.wizrocket.com/2015/03/05/androids-webview-is-broken/