您好我已经创建了一个包含一些数据行的listActivity,并且在屏幕底部(不是列表)我放了一个按钮。我的问题是,如果我的列表已满,因此需要要滚动以便看到其他行,按钮似乎是透明的并且与列表的最后一个元素重叠。所以它看起来并不令人愉快。你有什么建议如何解决这个问题?有没有办法让我的列表为底部按钮留出一些空间?我不想用页脚视图实现它。我会发布xml文件,以便你可以有一个更清晰的图片。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<DragNDrop.DragNDropListView
android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_weight="1" >
</DragNDrop.DragNDropListView>
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:alpha="1"
android:drawableLeft="@drawable/back"
android:text="Return" />
</RelativeLayout>
答案 0 :(得分:2)
试试这个
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:alpha="1"
android:drawableLeft="@drawable/back"
android:text="Return" />
<DragNDrop.DragNDropListView
android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/btn" >
</DragNDrop.DragNDropListView>
</RelativeLayout>
在RelativeLayout中,默认情况下元素放在左上角,不需要为List指定
答案 1 :(得分:1)
最简单的方法是将LinearLayout
与orientation = vertical
和ListView
与layout_weight = 1
一起使用,将Button用于ListView。
答案 2 :(得分:1)
将按钮放在相对布局中,然后设置属性
android:layout_above="@id/btn"
列出视图。因此,按钮不会发现最后的元素,因为列表的高度是最大高度减去按钮高度。
答案 3 :(得分:1)
更改你的xml,如下所示
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<DragNDrop.DragNDropListView
android:id="@+id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_above="@id/btn"
android:layout_marginBottom="50dp"
android:layout_weight="1" >
</DragNDrop.DragNDropListView>
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:alpha="1"
android:drawableLeft="@drawable/back"
android:text="Return" />
</RelativeLayout>
答案 4 :(得分:1)
试试这个,这样你在整个视图中按钮的比例为10%,列表视图的按钮为90%,按钮不会与最后一个列表元素重叠。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="100" >
<ListView
android:id="@+id/android:list"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="90" >
</ListView>
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="10"
android:text="Return" />
</LinearLayout>