首页 > 代码库 > Android -- Canvas java.lang.UnsupportedOperationException

Android -- Canvas java.lang.UnsupportedOperationException

干货

java.lang.UnsupportedOperationException     at android.view.GLES20Canvas.clipPath(GLES20Canvas.java:287)     at br.com.iba.view.PageCurlView.drawCurl(PageCurlView.java:284)     at br.com.iba.view.PageCurlView.onDraw(PageCurlView.java:353)     at android.view.View.draw(View.java:9291)

在用canvas的clipPath方法画图像之后,在Nexus5上跑着没问题,但是换到红米手机上就不行了,显示不出效果来,之后换了一台华为的手机来试,直接崩溃,这样也好,总比不崩溃但是显示不出效果来要好一些,之后在StackOverFlow上搜索,找到了解决方案。

原因是因为不支持硬件加速。

解决

mImageView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

我是天王盖地虎的分割线

 

 

参考:http://stackoverflow.com/questions/7401319/use-hardwareacceleration-flag-with-canvas-clippath

Android -- Canvas java.lang.UnsupportedOperationException