我用这个实现了一个很好的解决方案:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- This is the line -->
<item android:top="-1dp" android:right="-1dp" android:left="-1dp">
<shape>
<solid android:color="@android:color/transparent" />
<stroke android:width="1dp" android:color="#ffffff" />
</shape>
</item>
</layer-list>
如果您需要透明背景但仍然需要开放笔触颜色(在我的情况下,我只需要底线),这很有效。如果您需要背景颜色,您可以像 Maragues 回答中一样添加纯色。
编辑 1
有时,对于高密度设备,使用低倾角值可能会以非常薄或不可见的笔划或距离结束。在设置 ListView 分隔符时,您也可能会遇到这种情况。
最简单的解决方法是使用 1px 的距离而不是 1dp。这将使线在所有密度下始终可见。最好的解决方案是为每个密度创建维度资源,以获得每个设备的最佳尺寸。
编辑 2
有趣,但我在 6 年后尝试使用它,但在 Lollipop 设备上无法获得良好的效果。
目前的解决方案可能是使用 9-patch。经过这么长时间,Android 应该已经为这个问题提供了一个简单的解决方案。