短触摸时显示?android:attr/selectableItemBackground是否可能?

5

当使用selectableItemBackground属性实现“触摸涟漪效果”时,普通的触摸似乎太快了,无法出现“触摸涟漪”效果。我必须长按一点,才能正常工作。是否有办法在短时间内也能强制出现这种效果?

1个回答

0
我建议你创建一个自定义的波纹效果。
Pre API 21 的选择器。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <shape android:shape="rectangle">
            <solid android:color="@color/colorAccent" />
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@android:color/transparent" />
        </shape>
    </item>
</selector>

API 21+ 设备的涟漪效果

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

    <item
        android:id="@android:id/mask"
        android:drawable="@android:color/white" />
</ripple>

了解更多: 点击这里


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接