代码改变世界

设置android webview的背景颜色时没有效果

  张智清  阅读(8518)  评论(0编辑  收藏  举报
下列代码在模拟器上面试的时候是好的,可以在真机上跑的时候就不是了,得到的是一个白色的背景。
WebView webview;
webview=(WebView)findViewById(R.id.webview);
webview.setBackgroundColor(0x00000000);  //透明背景
其实在2.X的平台下,此设置webview背景为透明的方法还是有效的。但当程序在4.0上使用时,即使通过上面设置背景为0,照样显示出原来默认的白色背景。通过网上查找,发现原来是由于硬件加速导致的,此时就想到了使用代码关闭当前webview的硬件加速,方法如下:
wvContent.setLayerType(View.LAYER_TYPE_SOFTWARE,null);

这时发现又有新问题,如果要通过该代码进行设置,SDK最低版本也要11(android 3.0)无法正常编译。其实我们可以直接在XML布局文件中对WebView进行取消硬件加速。

android:layerType="software"



编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示