如何在android中的expandable listview中为列表项添加Ripple效果

时间:2017-01-06 12:04:11

标签: android listview

我正在创建一个包含可扩展列表视图的应用程序我想为可扩展列表视图中的列表项创建一个涟漪效果我为其创建了一个涟漪可绘制并添加了颜色并更改了可扩展的android:background listview到android:listselector但是涟漪效应仍然无法在应用程序中运行。

绘制对象:

    <codingtown.coconut.libraries.expandablelistview.ExpandableHeightListView
                android:id="@+id/detaillist_daybook"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:listSelector="@drawable/list_item_drawable"
                android:dividerHeight="1dp"
                android:fastScrollEnabled="true"
                android:groupIndicator="@null"
                android:paddingTop="5dp"
                android:scrollingCache="false"
                android:smoothScrollbar="true">

            </codingtown.coconut.libraries.expandablelistview.ExpandableHeightListView>

XML:

Array
(
[Roofing] => Array
    (
        [0] => Roofing Contractors
        [1] => Commercial Roofing
        [2] => Contractor Metal Roofing
    )

2 个答案:

答案 0 :(得分:1)

将此行添加到android:background="?selectableItemBackground"列表视图项目布局

答案 1 :(得分:0)

你错过了android:id="@android:id/mask"里面的涟漪。

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/colorlightAccent">
<item  android:id="@android:id/mask"android:drawable="@color/white"/>
</ripple>

首先为你的波纹尝试可见的颜色。如果您的背景颜色也是白色,您将无法看到。

如果您的应用程序在低于5.0的Android版本上受支持,也不要忘记添加向后兼容的drawable。