即使我添加了drawable-21,android涟漪效果也会在前棒棒糖中崩溃

时间:2017-05-15 09:55:26

标签: android

涟漪效果很好但在棒棒糖下面崩溃,所以我添加了drawable-v21 / animation_ripple,但结果是一样的。怎么做,这是我的代码: -

XML文件:

<Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/animation_ripple"
    android:text="Click Me"
    android:textColor="#ccc"/>

抽拉/ animation_ripple

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:color="#4d6670"
    tools:targetApi="lollipop">
    <item android:id="@android:id/mask">
        <shape android:shape="rectangle">
            <solid android:color="#4d6670" />
        </shape>
    </item>
    <item >
        <shape android:shape="rectangle">
            <solid android:color="#62bae0" />
        </shape>
    </item>
</ripple>

可绘制-V21 / animation_ripple

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:color="#4d6670"
    >
    <item android:id="@android:id/mask">
        <shape android:shape="rectangle">
            <solid android:color="#4d6670" />
        </shape>
    </item>
    <item >
        <shape android:shape="rectangle">
            <solid android:color="#62bae0" />
        </shape>
    </item>
</selector>

2 个答案:

答案 0 :(得分:2)

在drawable-v21中添加你的rippledrawable并在drawable中添加选择器drawable,因为<ripple> </ripple>标签用于api&gt; = 21

答案 1 :(得分:2)

应该是另一种方式: drawable-v21应包含<ripple ...个标记,并可绘制常规<selector ...标记。 drawable-v21文件夹下的所有内容都将在Lollipop上使用,而不是相反