我的布局中有一个ListView。
<ListView
android:id="@+id/list_infoitems"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
每个列表项布局如下所示:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/selector_custombutton"
android:padding="10dp"
android:layout_gravity="center">
<TextView
android:id="@+id/text_history_station_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical|left"
android:textColor="@color/rnv_blue_540c"/>
<TextView
android:id="@+id/text_history_line_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical|left"
android:textColor="@color/rnv_blue_540c"/>
</LinearLayout>
我希望所有项目之间有距离。为此,我玩了android:margin属性,但没有成功。
有人知道,如何更改列表视图中项目之间的距离。
谢谢,
穆尔
答案 0 :(得分:32)
您始终可以设置dividerHeight属性。 Android Docs
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:dividerHeight="5dp"
/>
如果这不是你想要做的,你可以在listview项目中将LinearLayout包装在RelativeLayout中并为LinearLayout添加一个边距
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
/>
</RelativeLayout>
答案 1 :(得分:1)
我发现ListView分隔符存在碎片问题。在2.3设备中,默认情况下实现灰线,但不会显示在4.x设备上。这可以通过手动设置android:divider="some_value"
来解决。我倾向于处理项目布局本身中的所有ListView项目布局问题。这是一个肮脏的小技巧,但解决了跨版本问题。注意添加一个&#34;隐藏&#34;查看下面。这不仅可以解决项目之间的问题,还可以在列表中的最后一项之后为您提供相同的填充。
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="5dp" />
<View
android:below="@id/list"
android:layout_height="0dp"
android:layout_width="0dp"
android:margin_top="5dp" />
</RelativeLayout>
答案 2 :(得分:0)
使用填充或边距或ListView本身。
<ListView
android:id="@+id/list_infoitems"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="5px"
/>
答案 3 :(得分:0)
要增加自己项目之间的距离,您可以使用
android:dividerHeight="xxdpi"
在
<ListView
android:id="@+id/list_infoitems"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:dividerHeight="xxdpi"/>
Regarts, 马可