setBackgroundColor () в Webview не работает - PullRequest
2 голосов
/ 16 ноября 2010

Я создал веб-представление с прозрачным фоном.

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); ничего не делает?

Ответы [ 2 ]

16 голосов
/ 16 ноября 2010

вы можете переопределить webview фон с помощью метода setbackgroundResource,

, попробуйте вот так, вы получите,

wv.setBackgroundColor(0);
wv.setBackgroundResource(color.blue);
wv.loadUrl(url); 
0 голосов
/ 19 сентября 2011

В настоящее время мы можем webview.setBackgroundColor(Color.TRANSPARENT) в onLayout(), а затем добавить style="background-color:white" в элемент html.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...