我创建了一个透明背景的网页视图。
browser = new WebView(ActivityActivate.this);
browser.setBackgroundColor(0);
browser.getSettings().setJavaScriptEnabled(true);
browser.addJavascriptInterface(new JavascriptInterface(), "javaInterface");
browser.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
browser.getSettings().setSupportZoom(true);
browser.loadDataWithBaseURL("https://checkout.google.com", form, "text/html", "UTF-8", null);
llPaymentButtons.addView(browser);
这是JavaInterface,当提交html表单并且所有复选框都通过测试时,它应该改变背景的颜色。
/**
* Interface for Javascript communication
*/
private class JavascriptInterface {
//This is in fact used but from JavaScript
@SuppressWarnings("unused")
public boolean checkboxPass() {
if( acceptsConditions() && acceptsLicense() && acceptsRefundPolicy() ) {
browser.setBackgroundColor(Color.WHITE);
return true;
}
return false;
}
}
然而,这不起作用,并且返回的文档仍然具有透明背景。我做错了什么,似乎browser.setBackgroundColor(Color.WHITE);
什么都没做?
答案 0 :(得分:16)
您可以使用webview
方法覆盖setbackgroundResource
背景,
尝试这样你会得到它,
wv.setBackgroundColor(0);
wv.setBackgroundResource(color.blue);
wv.loadUrl(url);
答案 1 :(得分:0)
目前,我们可以在webview.setBackgroundColor(Color.TRANSPARENT)
中onLayout()
,然后将style="background-color:white"
添加到html元素中。