我有一个自定义视图,它会在某些设备上抛出UnsupportedOperationException。它看起来像是:
java.lang.UnsupportedOperationException
at android.view.GLES20Canvas.clipPath(GLES20Canvas.java:287)
[...]
我知道有setLayerType方法,但只有API级别11支持此方法。如何解决API级别8的问题?
这是一个类似的thread但该解决方案对我不起作用,因为我使用的是API级别8。
答案 0 :(得分:2)
您可以在布局XML中定义layerType
。
<com.nth.android.ui.view.CircularProgressBar
android:layout_width="96dp"
android:layout_height="96dp"
android:background="@android:color/white"
android:src="@android:color/black"
android:layerType="software" />
我使用不受硬件加速支持的功能的项目将目标SDK版本设置为14,最小SDK版本为8.属性layerType="software"
适用于Honeycomb(Android 3.2)和Gingerbread(Android 2.3.3) )。
此外,在某些情况下,必须为包含相关视图的视图组(布局)设置layerType="software"
。