我认为@Leonidos 的答案非常接近我的建议,除了我将可绘制对象用作单独的视图而不是整个列表详细信息布局的背景。这允许它是一个固定的宽度,并让项目文本有自己的背景。如果我不理解您的限制,请告诉我。
以下文件是“res/drawable/list_left_border”
<?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="#e76e63" />
</shape>
</item>
<item android:top="2dp">
<shape android:shape="rectangle" >
<solid android:color="#ffc257" />
</shape>
</item>
</layer-list>
然后在“res/layout/list_item.xml”中的列表项布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
tools:context=".MainActivity" >
<View
android:background="@drawable/list_left_border"
android:layout_width="8dp"
android:layout_height="match_parent" />
<TextView
android:id="@+id/listItemText"
android:textSize="15sp"
android:padding="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
这是图像。背景是粉红色的,表明列表项是透明的。