android - 将硬件加速标志与 Canvas.clipPath 一起使用

标签 android android-3.0-honeycomb opengl-es-2.0 android-canvas

我正在为 Galaxy Tab 1 和 Galaxy Tab 2 移植一个项目,但 apk 运行缓慢,所以我在新应用程序的 AndroidManifest.XML 上添加了 hardwareAccelerated 标志。

但运行时出现以下错误:

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)

最佳答案

我在不支持硬件加速的 ImageView 项目中遇到了类似的问题。我用这段代码规避了这个问题:

mImageView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

它适合我。

关于android - 将硬件加速标志与 Canvas.clipPath 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7401319/

相关文章:

android - 如何在 android list 中声明 2 个搜索 Activity

android - 平板电脑上 Android Honeycomb 的 UI 指南

android - LibGDX - 限制透视相机的缩放

ios - 如何在运行时获取任何给定 iOS 设备上可用的受支持 OpenGL ES 版本?

android - 无法编译 'com.firebaseui:firebase-ui-database:2.1.1'

android - https 安卓下载管理器

android - 当我弹出 BackStack 时,自定义 fragment 过渡动画无法正确播放

android - Android下OpenGLES 2.0基于像素的碰撞检测问题

android - 如何避免 TextView 中文本的字符换行,以自动调整文本大小?

android - 如何为 osmdroid 准备离线 map 的 map 图 block 存档?