我有一个带有自定义行的listView,我需要在每一行之间设置一个自定义分隔符。 这是listView的代码:
<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="@dimen/menu_padding"
android:background="@color/customBlue"
android:divider="@drawable/list_divider"
android:dividerHeight="2px" />
这是行的代码:
<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="50dp"
android:orientation="horizontal"
tools:ignore="contentDescription"
android:background="@color/strongBlue" >
<ImageView
android:id="@+id/row_icon"
android:layout_width="50dp"
android:layout_height="50dp"
android:padding="10dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/row_title"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:padding="10dp"
android:textColor="@color/white"
android:textAppearance="@android:style/TextAppearance.Medium" />
</LinearLayout>
这是2像素分频器的代码:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:bottom="1px">
<shape android:shape="line">
<stroke
android:color="#0C0832"
android:width="2dp"
/>
<size
android:height="1px"
/>
</shape>
</item>
<item android:top="1px">
<shape android:shape="line">
<stroke
android:color="#2D2E57"
android:width="2dp"
/>
<size
android:height="1px"
/>
</shape>
</item>
</layer-list>
问题是我在每行之间有一个随机空间,它与listView backgroundColor具有相同的颜色,如果我将dividerHeight设置为4px,我可以看到我的分隔符。如何删除自动创建的空间并仅使用自定义分隔符?
答案 0 :(得分:0)
您可以在xml
android:dividerHeight="10dp"
android:divider="#ffffff"
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="schemas.android.com/apk/res/android">;
<gradient
android:type="radial"
android:startColor="#343030"
android:endColor="#151515"
android:gradientRadius="300"
android:angle="270"
android:centerY="0.3"/>
</shape>
您可以直接为分隔符赋予颜色,而不是为分隔符设置自定义绘图。
答案 1 :(得分:0)
在线性布局的行中使用以下代码
android:layout_marginTop="15dp"