簡體   English   中英

在Canvas.clipPath中使用hardwareAcceleration標志

[英]Use hardwareAcceleration flag with Canvas.clipPath

我正在為Galaxy Tab 2移植一個為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);

這個對我有用。

要防止與sdk版本相關的問題,您應該使用:

if (android.os.Build.VERSION.SDK_INT >= 11) {
    mapView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
} 

我收到了java.lang.NoSuchMethodError: setLayerType

這篇文章僅用於澄清事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM