为了在 webview 中有一个固定的背景,我费了很大的劲。
首先我尝试使用 CSS,但我发现 background-attachment:fixed 在 android 中不起作用,至少到 4(不知道更新的版本)。
另一种选择是有一个可滚动的 DIV,android 也不支持。
我没有尝试 iscroll 来解决这个问题,但早些时候在其他地方使用过它并且不满意。我不知道 iframe 是否可行。
另一种选择是使用 android 设置背景。我阅读了很多相关内容并尝试了很多方法,例如使用带有背景的容器布局并将 webview 背景设置为透明。
它在 2.2 中有延迟,在 4 中它根本不起作用。
我很累,浪费很多时间来实现这件小事。
你有什么其他的想法来实现这个吗?
最佳答案
我终于找到了解决办法:
这是你的做法:
首先让你的元素基于 11,但是在 AndroidManifest 中将 minSdkVersion 设置为 8
wv.setBackgroundColor(0x00000000);
if (Build.VERSION.SDK_INT >= 11) wv.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
this.wv.setWebViewClient(new WebViewClient()
{
@Override
public void onPageFinished(WebView view, String url)
{
wv.setBackgroundColor(0x00000000);
if (Build.VERSION.SDK_INT >= 11) wv.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
}
});
为了安全起见,请将其放入您的样式中:
BODY, HTML {background: transparent}
在 2.2 和 4 上为我工作
关于Android webview固定背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13801368/