Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将硬件加速标志与Canvas.clipPath一起使用_Android_Android 3.0 Honeycomb_Opengl Es 2.0_Android Canvas - Fatal编程技术网

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

Android 将硬件加速标志与Canvas.clipPath一起使用,android,android-3.0-honeycomb,opengl-es-2.0,android-canvas,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.PageCur

我正在为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\u TYPE\u软件,空)


它适合我。

要防止与sdk版本相关的问题,您应该使用:

if (android.os.Build.VERSION.SDK_INT >= 11) {
    mapView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
} 
我得到了
java.lang.NoSuchMethodError:setLayerType


这篇文章只是为了澄清问题。

好吧,禁用它是可行的,但运行缓慢,因为没有使用硬件加速。关于硬件加速可能会对你有所帮助。谢谢,看起来不错。但我在这里提到的问题是CustomView包含所有的逻辑和视图,我不能为此禁用硬件加速。