当webview遇到了Slidingmenu,webView出现卡白,解决方案
2013-11-04 18:37
381 查看
Sliding Menu的是一种比较新的设置界面或配置界面效果,在主界面左滑或者右滑出现设置界面,能方便的进行各种操作。如
Evernote、Google+、Foursquare等诸多优秀应用都采用了这种界面方案。效果见下图:
webView大家都认识,就像村头的王二狗,村上屌丝,人人都知。
如此白富美的SlidingMenu人见人爱,而屌丝WebView扮演着村头二狗的角色,当WebView遇到了SlidingMenu 的的时候,WebView就走不动路了,SlidingMenu如此elegant的滑动也被WebView拖的不那么优雅,每次划开SlidingMenu,WebView有文本的地方都会出现大片的卡顿,严重的影响了SlidingMenu的美观和使用。
一般很少有人想到将SlidingMenu和WebView结合,以为大部分应用使用SlidingMenu的时候都是在左抽屉里面放应用的栏目分类,主页面放一个个listView,像印象笔记这样
但是少数的怪才会想到这样的布局,左边的抽屉里面就已经将各个分类和下面的子项目列出来,所以中间的主页面就放一个webview来显示具体的文本内容,比如我:
这时候webview出现了卡白的问题,真心纠结死我了,查了各大论坛贴吧,最后问了SlidingMenu的作者,也没有得到回复,虽然这个bug不影响性能,但是这么优雅的SlidingMenu被卡白搞的如果掉价,太不舒服了,经过了俩天的苦思冥想和查找,最后发先在Android2.2上面没有这个问题,但是Android4.0上面却出现这样的问题,高版本竟然不如低版本兼容性好?经过研究发现了,原来是 Android从3.0(API Level 11)开始,在绘制View的时候支持硬件加速,充分利用GPU的特性,使得绘制更加平滑,但是会多消耗一些内存。这样问题就被锁定在了硬件加速上,解决方法也应运而生:关闭硬件加速。
在这个Activity中加入 android:hardwareAccelerated="false"
在webview的布局中加入 android:layerType="software"
Evernote、Google+、Foursquare等诸多优秀应用都采用了这种界面方案。效果见下图:
webView大家都认识,就像村头的王二狗,村上屌丝,人人都知。
如此白富美的SlidingMenu人见人爱,而屌丝WebView扮演着村头二狗的角色,当WebView遇到了SlidingMenu 的的时候,WebView就走不动路了,SlidingMenu如此elegant的滑动也被WebView拖的不那么优雅,每次划开SlidingMenu,WebView有文本的地方都会出现大片的卡顿,严重的影响了SlidingMenu的美观和使用。
一般很少有人想到将SlidingMenu和WebView结合,以为大部分应用使用SlidingMenu的时候都是在左抽屉里面放应用的栏目分类,主页面放一个个listView,像印象笔记这样
但是少数的怪才会想到这样的布局,左边的抽屉里面就已经将各个分类和下面的子项目列出来,所以中间的主页面就放一个webview来显示具体的文本内容,比如我:
这时候webview出现了卡白的问题,真心纠结死我了,查了各大论坛贴吧,最后问了SlidingMenu的作者,也没有得到回复,虽然这个bug不影响性能,但是这么优雅的SlidingMenu被卡白搞的如果掉价,太不舒服了,经过了俩天的苦思冥想和查找,最后发先在Android2.2上面没有这个问题,但是Android4.0上面却出现这样的问题,高版本竟然不如低版本兼容性好?经过研究发现了,原来是 Android从3.0(API Level 11)开始,在绘制View的时候支持硬件加速,充分利用GPU的特性,使得绘制更加平滑,但是会多消耗一些内存。这样问题就被锁定在了硬件加速上,解决方法也应运而生:关闭硬件加速。
在这个Activity中加入 android:hardwareAccelerated="false"
在webview的布局中加入 android:layerType="software"
<WebView android:id="@+id/article_context" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginTop="5dip" android:textIsSelectable="true" android:layerType="software" android:background="@null" android:textSize="@dimen/context_size" />
相关文章推荐
- 当webview遇到了Slidingmenu,webView出现卡白,解决方案
- [转]当webview遇到了Slidingmenu,webView出现卡白,解决方案
- 当webview遇到了Slidingmenu,webView出现卡白,解决方案
- 关于连续打开多个包含WebView的Activity出现空白加载不出来的bug的解决方案
- Android中WebView加载页面出现白屏解决方案
- ScrollView与WebView结合使用时,设置webview字体大小的时候出现下方留白解决方案
- iOS webView展示部分docx出现乱码解决方案
- 【Android】WebView找不到网页,可能暂时出现故障解决方案
- #webview简介与遇到的问题及解决方案##
- Android WebView遇到非标准重定向不能返回时的解决方案。
- iphoneX,push进入一个webview, 页面底部出现一个黑色区域解决方案
- UIWebView出现的webViewDidFinishLoad一直没触发的问题的解决方案
- ScrollView与WebView结合使用时,设置webview字体大小的时候出现下方留白的终极解决方案
- react native里在ios平台引用webview时由于平台差异无故出现黑边解决方案
- Android:使用Slidingmenu显示WebView的时候出现空白部分
- 升级了xcode7和iOS9 webview出现了无法加载网页的问题
- Viewpager做无限循环遇到的出现短暂空白的问题
- android webView.loadData乱码解决方案
- Android webview 快照及白屏闪屏解决方案
- WebView上传文件遇到的坑openFileChooser