Reputation: 61
Recently, I implement webbased-application on Android. I want to make webview's background color Transparent.
Searching, i've found that two lines for Webview.
newWebView.setBackgroundColor(0x00000000);
newWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
It works for Android version 4.0~4.3, but does not work for 4.4 KITKAT.
I got just white-background. Addtionally, when i set background color, black, shown below :
newWebView.setBackgroundColor(Color.BLACK);
Also I saw white-background. Is there anybody knows the solution ?
Upvotes: 5
Views: 9987
Reputation: 604
works for android 6 (for me), see previous answer
wv.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
view.setBackgroundColor(ContextCompat.getColor(context, R.color.transparent));
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
view.setLayerType(View.LAYER_TYPE_HARDWARE, null);
} else {
view.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
}
});
wv.setBackgroundResource(android.R.color.transparent);
Upvotes: 1
Reputation: 339
This might help you
webView.setBackgroundColor(0x00000000);
if (Build.VERSION.SDK_INT >= 11) webView.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
this.wv.setWebViewClient(new WebViewClient()
{
@Override
public void onPageFinished(WebView view, String url)
{
view.setBackgroundColor(0x00000000);
if (Build.VERSION.SDK_INT >= 11) view.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
}
});
Upvotes: 4