【Android】WebView设置背景色

来源:互联网 发布:巨人网络私有化价格 编辑:程序博客网 时间:2024/05/18 03:18

 试遍了网上关于WebView设置背景色的各个方法,都没有下面这个靠谱。描述下我遇到的问题,WebView加载显示一段Html代码,但是UI设计的主界面是有一个浅灰色背景,而WebView默认的背景色白色死活去不掉,最终找到了下面的这篇文章。正解:

 

Android WebView 设置背景色为透明色在网上找了 好多的方法都试过了 都不行1.直接设置成background 为透明色 或者透明图片 (无效)android:background="@android :color/transparent"2.设置加载的html为透明背景图片(无效) String mobileDetails = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /><title>vvv</title></head>" +   "<div style='background-image: url(file:///android_asset/z_bg_transparent.png);'>" +   mGetDetail.data.get("description")   + "</div></html>";3.网上所谓的(无效)android:layerType="software"或者android:hardwareAccelerated="false"4. 直接代码中设置 mWebView.setBackgroundColor(0); (无效)5.最后抓着头皮我在 mWebView.setBackgroundColor(0); 基础上设置了他的透明度为 2 结果ok了(有效)代码如下:  mWebView.getSettings().setJavaScriptEnabled(true);  mWebView.getSettings().setDefaultTextEncodingName("utf-8") ;  mWebView.setBackgroundColor(0); // 设置背景色  mWebView.getBackground().setAlpha(0); // 设置填充透明度 范围:0-255  mWebView.loadDataWithBaseURL(null, "加载中。。", "text/html", "utf-8",null);  mWebView.loadDataWithBaseURL(mGetDetail.data.get("hostsUrl"), mGetDetail.data.get("description"), "text/html", "utf-8",null);  mWebView.setVisibility(View.VISIBLE); // 加载完之后进行设置显示,以免加载时初始化效果不好看

最后设置背景色哪行代码设置上就OK了

亲测可行,大家可以验证下哈

0 0