解决WebView滑动黑屏外加显示黑屏的问题

2017-01-14 10:46:24来源:http://www.jianshu.com/p/d714597cec96作者:被风扬起的沙人点击

**最近在做项目时处理bug的时候,发现有的华为手机跟oppo手机运用webview的时候会出现问题,特将解决方法发上来与大家分享


一开始华为手机滑动黑屏的时候,就上网查,一般都是说法都是将改activity的硬件加速关掉,但是原先代码里面已经关掉,但是还是显示这样,没办法,正好最近看了一个腾讯三方开源的X5浏览器内核,webview中的类的命名跟原生的命名都一样,就是修改一下导的包就好:
所用的类:
系统内核 | SDK内核
android.webkit.WebView | com.tencent.smtt.sdk.WebView
android.webkit.WebViewClient | com.tencent.smtt.sdk.WebViewClient
android.webkit.WebSettings | com.tencent.smtt.sdk.WebSettings
android.webkit.WebChromeClient |com.tencent.smtt.sdk.WebChromeClient


在XML中的设置
 <com.tencent.smtt.sdk.WebView
android:id="@+id/forum_context"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingLeft="5dp"
android:paddingRight="5dp" />

剩下的跟原先的代码设置就好,bug解除,滑动之后不显示黑屏了。


后来oppo测试机一开始展示的时候就显示黑屏先将原先的WebView的一些设置先屏蔽掉,显示就没有问题,后续在配置中进行一一排除:

webView.setBackgroundColor(Color.TRANSPARENT); // WebView 背景透明效果
发现是这段代码的问题,将其屏蔽掉,显示正常


总结遇到黑屏问题先在配置文件中设置

activity:android:hardwareAccelerated="false"将硬件加速关闭再进行操作。腾讯X5内核浏览器官网说加载速度比原生的快30% 个人用起来感觉还不错,不过官方论坛里面还有很多bug要解决,不过对于需求不大,只是展示一下页面外加与js交互一下的话应该也足够了




最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台