Ripple需要API级别21(当前最小值为11),android?

时间:2015-03-21 06:23:57

标签: android material-design floating ripple

我有以下可绘制的

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?android:colorControlHighlight" >

<item>
    <shape android:shape="oval" >
        <solid android:color="?android:colorAccent" />
    </shape>
</item>

我收到此错误

<ripple> requires API level 21 (current min is 11)

我该如何解决?

2 个答案:

答案 0 :(得分:19)

您使用的是minsdk = 11.

您不能将此drawable用于api <21。

您必须使用此可绘制文件的不同版本 将此代码放入res/drawable-v21/myRipple.xml并创建不同的res/drawable/myRipple.xml

答案 1 :(得分:1)

虽然标签是在API 21中添加的,但RippleDrawable非常简单,并且可以将其移植回API 1.有大量的库向后移植旧设备的纹波。有关示例实现,请参阅:

https://github.com/ZieIony/Carbon/blob/master/carbon/src/main/java/carbon/drawable/ripple/RippleDrawableICS.java