Android:使用Slidingmenu显示WebView的时候出现空白部分

使用Slidingmenu的时候,以前一直从侧边栏打开的都是普通的Fragment页面,不管是采用replace()还是hide()和show(),contentView都没有出现过空白部分。空白部分的内容,往往会稍微晚点显示完整。

这次由于contentView包含了webView,加载的是一个网页,所以才出现了这种情况。

这是一篇博客的解决办法,我试了下,的确有用。后期的话,如果Slidingmenu作者自己解决的话,那当然最好。所以这个办法,当作是暂时的替代吧。

在Android2.2上面没有这个问题,但是Android4.0上面却出现这样的问题,高版本竟然不如低版本兼容性好?经过研究发现了,原来是  Android从3.0(API Level 11)开始,在绘制View的时候支持硬件加速,充分利用GPU的特性,使得绘制更加平滑,但是会多消耗一些内存。这样问题就被锁定在了硬件加速上,解决方法也应运而生:关闭硬件加速。

在这个Activity中加入:

android:hardwareAccelerated="false"

在webview的布局中加入:

android:layerType="software"

如:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:hardwareAccelerated="false" >

    <WebView
        android:id="@+id/web_page"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layerType="software"/>

 

 

你可能感兴趣的:(SlidingMenu)