ListView分割线长度设置及遇到的问题

在设置ListView分割线的时候,我们可以通过
android:divider="@drawable/listview_divider"
来自定义分割线,listview_divider这个XML我使用的如下的形式实现
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:left="47.5dp"
        android:right="10.5dp">
        <shape android:shape="rectangle" >
            <solid android:color="#ececec" />
        </shape>
    </item>
</layer-list>

因为这个分割线离两边是有间距的,使用后发现,ListView自带的分割线在两边的间距内还是会显示出来。

这里我通过2个item叠加来解决这个问题

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item>
        <shape android:shape="rectangle" >
            <solid android:color="#ffffff" />
        </shape>
    </item>
    <item
        android:left="47.5dp"
        android:right="10.5dp">
        <shape android:shape="rectangle" >
            <solid android:color="#ececec" />
        </shape>
    </item>
</layer-list>

底部叠加一个距离两边没有间距的item,颜色与ListView的item子项相同即可。





版权声明:本文为tushiba原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。