2

背景が透明なウェブビューを作成しました。

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);

これは、htmlフォームが送信され、すべてのチェックボックスがテストに合格したときに背景の色を変更する必要があるJavaInterfaceです。

/**
 * 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);は何もしないようですか?

4

2 に答える 2

16

メソッドでwebview背景をオーバーライドできます。setbackgroundResource

このように試してみてください、あなたはそれを得るでしょう、

wv.setBackgroundColor(0);
wv.setBackgroundResource(color.blue);
wv.loadUrl(url); 
于 2010-11-16T11:47:00.307 に答える
0

現在、 をhtml 要素webview.setBackgroundColor(Color.TRANSPARENT)onLayout()追加することができます。style="background-color:white"

于 2011-09-19T04:45:24.993 に答える