Search code examples
androidandroid-3.0-honeycombopengl-es-2.0android-canvas

Use hardwareAcceleration flag with Canvas.clipPath


I'm porting a project made for the Galaxy Tab 1, for Galaxy Tab 2, but the apk runs slowly so I added the hardwareAccelerated flag on the AndroidManifest.XML of the new application.

But running give me the following error:

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)

Solution

  • I had the similar problem in my project with ImageView which doesn't support hardware acceleration. I circumvented this problem with this code:

    mImageView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

    It work's for me.