camera.applyToCanvas(canvas)无效
来源:互联网 发布:国密5算法 编辑:程序博客网 时间:2024/04/28 23:22
在自定义view中用到了canera的3D效果,可是camera.applyToCanvas(canvas)在4.3以下的系统中不起作用。比较了下源码,查了一些资料发现了问题所在。
在网上查到的资料说4.3以下如果启用了硬件加速渲染,则3D效果不起作用
public void applyToCanvas(Canvas canvas) { if (canvas.isHardwareAccelerated()) { if (mMatrix == null) mMatrix = new Matrix(); getMatrix(mMatrix); canvas.concat(mMatrix); } else { nativeApplyToCanvas(canvas.getNativeCanvasWrapper()); } }上面为4.4源码
public void applyToCanvas(Canvas canvas) { nativeApplyToCanvas(canvas.mNativeCanvas); }上面为4.1源码,4.2,4.3基本一致
通过比较源码可以看到4.4在硬件加速情况下camera.applyToCanvas(canvas)实现方式为
if (canvas.isHardwareAccelerated()) { if (mMatrix == null) mMatrix = new Matrix(); getMatrix(mMatrix); canvas.concat(mMatrix); }所以解决方法就是在4.3以下硬件加速的情况下使用canvas.concat(mMatrix);而不是camera.applyToCanvas(canvas)
0 0
- camera.applyToCanvas(canvas)无效
- Android canvas.clipPath无效
- HTML5-canvas擦除无效
- UGUI中的Canvas、Camera和Canvas Scaler
- UGUI中的Canvas、Camera和Canvas Scaler
- UGUI中的Canvas、Camera和Canvas Scaler
- UGUI中的Canvas、Camera和Canvas Scaler
- canvas.clipPath canvas.clipRect() 无效的原因
- Android开发:canvas.drawTextOnPath()无效
- android使用camera和matrix,canvas小结
- canvas.drawPath无效,画不出来
- android camera获取matrix作用于canvas的研究
- MTK平台Camera恢复默认设置对语音拍照无效
- Android开发:canvas.drawTextOnPath()无效----Android4.03的又一个bug!!!!(关于Canvas绘制的方方面面)
- Android开发:canvas.drawTextOnPath()无效----Android4.03的又一个bug!!!!(关于Canvas绘制的方方面面) .
- camera
- Camera
- camera
- Zabbix分布式监控
- iOS Block使用
- Yii2学习笔记(二):慕课网视频教程笔记
- hdu 4758 - Walk Through Squares(AC自动机+DP)现场赛
- poj 3278 Catch That Cow
- camera.applyToCanvas(canvas)无效
- 剑指offer-字符串转化成整数
- Highcharts中的可拖动图例
- Java中int和string的类型转换
- openoffice转换过程中遇到繁体字文档转换失败的问题
- XMPP个人信息展示
- php判断手机是安卓系统还是ios系统
- 黑马程序员—Java的GUI
- 图像资源Images Assets