android webview 硬件加速 view渲染问题
来源:互联网 发布:c语言函数头 编辑:程序博客网 时间:2024/06/08 04:51
告诉我我并不孤单,在项目里面遇到一个没有道理的问题,在webview的滚动的时候,竟然出现了顶部的view的渲染的问题,哈。。。。。无赖脸~
===============================对,我是分割线=====================================
嗯,开始一看这问题,得,要解决吧,不能说不解决吧,怎么问百度呢,怎么问google呢,好纠结啊,android webview view变色?懵逼脸。。。
废话end。。。。。
理解View的绘制模型:
1.没有硬件加速:invalidate the view hierarchy ------> draw the view hierarchy
2.有硬件加速:invalidate the view hierarchy ------> record and update the display list ------> draw the display list
嗯,没看出什么来,对了,没啥太多的提示。
咳咳,事实是这个样子的,google官方好像早就知道了,留了个大大的坑。
开启硬件加速之后的异常反应:
1.某些UI元素没有显示:可能是没有调用invalidate
2.某些UI元素没有更新:可能是没有调用invalidate
3.绘制不正确:可能使用了不支持硬件加速的操作, 需要关闭硬件加速或者绕过该操作
4.抛出异常:可能使用了不支持硬件加速的操作, 需要关闭硬件加速或者绕过该操作
哈,引子结束,在我正在优化的项目中,因为用了h5的本地化页面,页面元素比较多,加重了手机的负担,在进行页面的渲染的时候,又在aplication级的地方加入了硬件加速的一个设置,作死。
故而,解决办法,关闭掉硬件加速:
方法:
Application级别:<applicationandroid:hardwareAccelerated="true" ...>
Activity级别:<activity android:hardwareAccelerated="false" ...>
Window级别:
getWindow().setFlags( WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED, WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
注意:目前为止,Android还不支持在Window级别关闭硬件加速。
View级别:
myView.setLayerType(View.LAYER_TYPE_HARDWARE, null);
- android webview 硬件加速 view渲染问题
- Android WebView硬件加速渲染网页UI的过程分析
- Android WebView硬件加速渲染网页UI的过程分析
- android 硬件加速后webview闪烁问题
- android硬件加速后webview闪烁问题
- android 硬件加速后webview闪烁问题
- android h5 js 混合开发解决webview加载白屏,不加载网页的问题(硬件加速网页渲染,优化体验)
- android硬件加速以及渲染基础知识
- android硬件加速(View.LAYER_TYPE_SOFTWARE)与GridView for ScrollView 显示问题
- Android自定义view之硬件加速
- Android setLayerType 硬件加速问题
- Android硬件加速问题
- Android setLayerType 硬件加速问题
- Android硬件加速问题
- Android 4.0 硬件加速纹理渲染过程
- Android 4.0 硬件加速纹理渲染过程
- Android 4.0 硬件加速纹理渲染过程
- Android 4.0 硬件加速纹理渲染过程
- POJ3372
- Ajax:1.1 基础了解
- 初识Hibernate
- 网址收藏
- 初步认识注解,用反射来读取自定义注解
- android webview 硬件加速 view渲染问题
- Docker cpu限制分析
- Codeforces Round #368 (Div. 2) (勾股数)
- Windows远程桌面连接时出错,重启还是不行的处理方法。
- meta name="viewport" content="width=device-width,initial-scale=1.0" 解释
- C++ Primer Plus 之 输入、输出和文件
- MFC Edit控件 error:“DDX_Control”: 不能将参数 3 从“int”转换为“CWnd &”
- 根据前台设计数据库--产品展示页
- V第七章 字符串