删除列表视图上的填充
Remove padding on listview
您好,我有一个恼人的问题,我想在我的列表视图底部放置一个按钮作为操作栏的一部分,但是在列表视图的最后一项下方有一些填充我无法摆脱.这是我的代码,如有任何帮助,我们将不胜感激。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:drawingCacheQuality="high">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:drawingCacheQuality="high"
android:paddingBottom="0dp"
android:layout_margin="0dp"
>
<ListView
android:id="@+id/messagingListView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:divider="@null"
android:layout_margin="0dp"
android:layout_alignParentTop="true"
android:dividerHeight="10dp"
android:paddingTop="10dp"
android:paddingRight="10dp"
android:paddingBottom="0dp"
android:paddingLeft="10dp"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="0dp"
android:background="#FFFFFF"
android:layout_alignParentBottom="true">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="new_game"
android:textColor="#FFFFFF"
/>
</LinearLayout>
更简单的布局如下所示:
- 包含
ListView
和操作栏 的垂直 LinearLayout
- 用于操作栏的
LinearLayout
的高度为 wrap_content
,因此它仅获得其子项所需的高度
-
ListView
有它的 height
到 0dp
和它的 weight
到 1
为了让它占用所有可用的 space左边的操作栏
<?xml version="1.0"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:drawingCacheQuality="high">
<ListView
android:id="@+id/messagingListView"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:divider="@null"
android:layout_margin="0dp"
android:dividerHeight="10dp"
android:paddingTop="10dp"
android:paddingRight="10dp"
android:paddingBottom="0dp"
android:paddingLeft="10dp" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="0dp"
android:background="#FFFFFF">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="new_game"
android:textColor="#FFFFFF" />
</LinearLayout>
</LinearLayout>
如果 space 仍然存在,您应该明确向我们展示用于列表项的布局
注:
在 Android Studio 中,尝试单击 LinearLayout
使其在 Preview
中突出显示,然后在 ListView
上单击以查看是否存在间隙(使用飞涨)。
如果您看到上面的布局有差距,那是您计算机上的一个 Android Studio Preview
错误,它适用于所有设备。
您好,我有一个恼人的问题,我想在我的列表视图底部放置一个按钮作为操作栏的一部分,但是在列表视图的最后一项下方有一些填充我无法摆脱.这是我的代码,如有任何帮助,我们将不胜感激。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:drawingCacheQuality="high">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:drawingCacheQuality="high"
android:paddingBottom="0dp"
android:layout_margin="0dp"
>
<ListView
android:id="@+id/messagingListView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:divider="@null"
android:layout_margin="0dp"
android:layout_alignParentTop="true"
android:dividerHeight="10dp"
android:paddingTop="10dp"
android:paddingRight="10dp"
android:paddingBottom="0dp"
android:paddingLeft="10dp"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="0dp"
android:background="#FFFFFF"
android:layout_alignParentBottom="true">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="new_game"
android:textColor="#FFFFFF"
/>
</LinearLayout>
更简单的布局如下所示:
- 包含
ListView
和操作栏 的垂直 - 用于操作栏的
LinearLayout
的高度为wrap_content
,因此它仅获得其子项所需的高度 -
ListView
有它的height
到0dp
和它的weight
到1
为了让它占用所有可用的 space左边的操作栏
LinearLayout
<?xml version="1.0"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:drawingCacheQuality="high"> <ListView android:id="@+id/messagingListView" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" android:divider="@null" android:layout_margin="0dp" android:dividerHeight="10dp" android:paddingTop="10dp" android:paddingRight="10dp" android:paddingBottom="0dp" android:paddingLeft="10dp" /> <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="0dp" android:background="#FFFFFF"> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="new_game" android:textColor="#FFFFFF" /> </LinearLayout> </LinearLayout>
如果 space 仍然存在,您应该明确向我们展示用于列表项的布局
注:
在 Android Studio 中,尝试单击 LinearLayout
使其在 Preview
中突出显示,然后在 ListView
上单击以查看是否存在间隙(使用飞涨)。
如果您看到上面的布局有差距,那是您计算机上的一个 Android Studio Preview
错误,它适用于所有设备。