`

java.lang.UnsupportedOperationException android.view.GLES20Canvas.clipPath

阅读更多

今天自定义控件使用Canvas绘图的时候遇到的这个错误,看错误的描述,是不支持这个clipPath方法的。而且在2.3的机器上没有问题,是一部4.0的机器报了这个问题。查看这个Canvas的子类实现GLES20Canvas,发现这是在开启硬件加速时使用的。看来还是和硬件加速有关。打开手机的开发者选项,发现硬件加速没有被开启,应用里也没有开启,有点奇怪了,可能是手机优化自动开启了硬件加速。

硬件加速这个特性是从API 11加入的,可以大大加快View的绘制,是个很不错的功能,所以我们不可能在我们的程序里直接关闭这个功能这样我们的应用就使用不了这个特性了,所以在Application标签里设置android:hardwareAccelerated="false'不可行。所以可以在用到这个自定义View里的Activity里使用android:hardwareAccelerated=“false”来配置,这样其他的Activity可以继续使用同步加速的特性。不过你的自定义View用到的地方比较多,一个个Activity配置也不太方便,所以最好的办法是在你的自定义View里禁用View级别的硬件加速。可以通过以下代码来实现

if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.HONEYCOMB){//API 11及其之上
    setLayerType(LAYER_TYPE_SOFTWARE,null);//禁用硬件加速
}

 

分享到:
评论

相关推荐

    java.lang.UnsupportedOperationException异常(csdn)————程序.pdf

    `java.lang.UnsupportedOperationException`是Java中的一个运行时异常,它属于`RuntimeException`的子类。这个异常通常在尝试调用一个不支持的操作时抛出。在Java编程中,某些方法可能在特定对象或特定条件下不支持...

    Android 兼容性问题:java.lang.UnsupportedOperationException解决办法

    "Android 兼容性问题:java.lang.UnsupportedOperationException解决办法" Android 兼容性问题:java.lang.UnsupportedOperationException解决办法是 Android 开发中常见的一种问题。该问题会导致应用程序崩溃,...

    java.lang.UnsupportedOperationException(解决方案).md

    在Java编程中,UnsupportedOperationException是一个常见的运行时异常,它发生在尝试执行一个对象不支持的操作时。为了解决这个问题,首先需要明白异常产生的根本原因,然后采取合适的措施进行应对。以下是一些有效...

    Android webveiw 出现栈错误解决办法

    然而,有时在使用WebView时,可能会遇到一些错误,比如“java.lang.UnsupportedOperationException: For security reasons, WebView is not allowed in privileged processes”。这个错误通常发生在尝试在一个具有高...

    com.avr.exception.UnsupportedOperationException(解决方案).md

    比如,当你使用Java集合框架中的某些集合类时,尝试进行它们不支持的操作,例如对`java.util.Collections.UnmodifiableCollection`进行添加元素的操作,就会抛出这个异常。这个异常是`RuntimeException`的子类,所以...

    1 ElasticSearch 安装

    ### Elasticsearch在Linux系统的安装与配置详解 #### 一、引言 Elasticsearch是一款基于Lucene的开源搜索和分析引擎,适用于全文检索、结构化数据检索等场景。它以其高性能、高扩展性和易于使用的特性而受到广泛...

    Java.util随记.doc

    Java.util包是Java标准库中的核心包之一,它包含了大量用于处理各种数据结构和集合的类和接口。在这个包中,我们经常会用到`Iterator`和`List`接口,这两个接口在Java编程中扮演着非常重要的角色。 首先,`Iterator...

    prueba-javassist:用于动态代码插入的字节码级别的类操作测试

    测试javassist 用于动态代码插入的字节码级别的类操作测试虚拟机参数-agentlib:jdwp = ... 根据您运行的 JVM,可能会出现以下错误:线程“HotSwap”中的异常 java.lang.UnsupportedOperationException:未实现架构更改

    环信移动客服DEMO无问题版

    > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException 解决这个问题

    list使用过程中遇到的坑

    xception in thread "main" java.lang.UnsupportedOperationException Arrays.asList转化基本数据类型数组的时候有个意想不到的坑 当我们在实际业务开发过程中,难免会遇到数组转List的操作,通常我们所选择的就是...

    com.avr.exception.UnsupportedOperationException解决方案(亲测可用).md

    在进行程序开发的过程中,尤其是涉及单片机编程或硬件接口操作时,常常会遇到不被支持的操作异常UnsupportedOperationException。该异常通常发生在开发者尝试对某个对象执行其不支持的操作时,例如对一个不支持添加...

    com.mcs51.exception.UnsupportedOperationException(解决方案).md

    `UnsupportedOperationException`是在Java编程语言中常见的异常之一,它属于运行时异常,当调用的方法不支持请求的操作时会被抛出。尽管它通常用于标记类或接口不支持的操作,但在单片机与上位机交互过程中,也可能...

    com.mcs51.exception.UnsupportedOperationException解决方案(亲测可用).md

    UnsupportedOperationException是Java平台中常用的几种受检异常之一,通常在调用不支持的方法时抛出。根据Java文档的说明,当调用某个对象的方法,而该对象不支持该方法时,就会抛出UnsupportedOperationException。...

    MockDialogInterface.rar_All You Need

    A mock {@link android.content.DialogInterface} class. All methods are non-functional and throw {@link java.lang.UnsupportedOperationException}. Override it to provide the operations that you need.

    hibernate_常见问题集锦.doc

    java.lang.UnsupportedOperationException: The user must supply a JDBC connection ``` **解决方案:** 为了解决这个问题,开发者应该在初始化Configuration对象时,指定Hibernate的配置文件路径,以便读取正确的...

    java 操作错误(UnsupportedOperationException)

    在Java编程语言中,`UnsupportedOperationException` 是一个标准的运行时异常,通常在不支持特定操作的情况下抛出。这个错误通常表明某个方法被调用,但该方法在当前上下文中并未实现或者不适用。让我们深入了解一下...

    Proguard v5.3.3.rar

    代码混淆的时候出现java.lang.UnsupportedOperationException: Unsupported class version number [52.0] (maximum 51.0, Java 1.7),原因是proguard.jar版本太低,需要5.0以上的版本

    Java读取“桌面”、“我的文档”路径的方法

    以下是一个示例,它使用`java.lang.System`的`getProperty`方法获取用户主目录,然后添加"Documents"子目录: ```java import java.io.File; import java.util.Properties; public class Main { public static ...

Global site tag (gtag.js) - Google Analytics