Android webview背景设置为透明无效 拖动时背景闪烁黑色

摘要:
在Adndroid2.X中设置webview是一个方便而强大的控件。但是,由于webview的背景颜色默认为白色,因此在某些情况下会很突然。在这一点上,我想到了webview的背景应该设置为透明的,这样它就可以与其背景集成。这时,我们发现了一个新问题。如果您想通过此代码进行设置,最低SDK版本必须为11,并且不能正常编译。

Adndroid 2.X的设置

webview是一个使用方便、功能强大的控件,但由于webview的背景颜色默认是白色,在一些场合下会显得很突兀(比如背景是黑色)。

此时就想到了要把webview的背景设置为透明,这样就可以与其背景融为一体。

在2.X的平台下,一般设置webview背景为透明的方法如下:

mWebView.setBackgroundColor(0);

Adndroid 4.0以上背景透明失效
但当程序在4.0上使用时,发现居然这种设置方法无法,即使通过上面设置背景为0,照样显示出原来默认的白色背景。

通过网上查找,发现原来是由于硬件加速导致的,此时就想到了使用代码关闭当前webview的硬件加速,方法如下:

mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE,null);

这时发现又有新问题,如果要通过该代码进行设置,SDK最低版本也要11(android 3.0)无法正常编译。

这时发现又有新问题,如果要通过该代码进行设置,SDK最低版本也要11(android 3.0)无法正常编译。

柳暗花明

不给在代码里设置,可以在布局文件中直接对webview进行设置啊,方法如下:

android:layerType="software"

或者在AndroidManifest.xml注册Activity时加入

android:hardwareAccelerated="false"

通过测试,在4.0和2.2都能正常运行,webview透明背景设置成功.

同时在关闭硬件加速后,滑动时背景色也不会再闪烁黑色。

免责声明:文章转载自《Android webview背景设置为透明无效 拖动时背景闪烁黑色》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Tensorflow 变量的共享MyBatis学习4---使用MyBatis_Generator生成Dto、Dao、Mapping下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

iOS WKWebView 使用笔记

首先添加Webkit框架 导入#import <WebKit/WebKit.h> #import <WebKit/WebKit.h> @interface WebBrowerViewController ()<WKNavigationDelegate> @property(nonatomic,strong) WK...

Appcan、apicloud、HBuilder 不同之处解析

来源:http://www.mamicode.com/info-detail-1129829.html 现在Hybrid app是一中非常火热的开发模式,在国内对应的开发工具也乱象丛生,有WeX5、crossApp、ExMobi、Appcan、apicloud、HBuilder等。   其中WeX5只是在PhoneGap外面套了一层壳子,内部的UI都是通过...

前端webview开发中遇到的一些问题及其解决方法

最近做了一个webview中的兑换页面,本来以为很简单,想不到遇到了远远超出预期数量的BUG,记下来,以备后患。 1 inline-block元素折行   BUG描述:现在我有三个DIV,要在一列等宽排列,设定宽度为33.33333%,想象中应该是正好充满一列。 然而事实是,div折行了=。=,div之间还出现了一个缝隙。 这个问题很常见,出现的原因是浏...

内嵌web浏览器

有时候,我们需要在程序中嵌入浏览器,显示一个指定的网页。 Qt5中,有一个 QtWebEngineWidgets 模块,通过它,可以启动基于Chromium的浏览器(和chrome是同样的内核)进程,并且把web界面内嵌入 Qt程序中。 参考官网说明 案例 我们可以实现一个内嵌浏览器,打开白月黑羽网站。 整个案例的参考代码,点击这里下载 链接:https:...

如何通过Html网页调用本地安卓app?

如何使用html网页和本地app进行传递数据呢?经过研究,发现还是有方法的,总结了一下,大致有一下几种方式 一、通过html页面打开Android本地的app 1、首先在编写一个简单的html页面 <html> <head> <meta http-equiv="Content-Type" c...

Android:你不知道的 WebView 使用漏洞

前言 如今非常多App里都内置了Web网页(Hyprid App),比方说非常多电商平台。淘宝、京东、聚划算等等。例如以下图 上述功能是由 Android的WebView 实现的。可是 WebView 使用过程中存在很多漏洞,easy造成用户数据泄露等等危急,而非常多人往往会忽视这个问题 今天我将全面介绍 Android WebView的使用漏洞 及...