在Android应用

时间:2015-05-23 10:39:53

标签: android android-layout listview

我在我的Android应用程序中使用listview小部件,我想在它下面的固定位置添加两个按钮(您可以滚动列表,但两个按钮必须始终显示在它下面)。像这样:

 ------------ 
|            |
|   List     |
|            |
|            |
 ------------ 
| But1  But2 |
 ------------ 

在android xml文件图形视图中,一切看起来都不错。但是,当我尝试运行应用程序时,列表视图会出现,但按钮却没有。这是我的代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical" >

    <ListView
        android:id="@android:id/list"
        android:layout_width="match_parent"
        android:layout_height="411dp" >
    </ListView>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="0dp"
        android:background="@drawable/darkbg"
        android:gravity="center_horizontal"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/butEdit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="5dp"
            android:background="@drawable/button_style"
            android:text="@string/delete_button"
            android:textColor="#FFFFFF" />

        <Button
            android:id="@+id/butOpen"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="5dp"
            android:background="@drawable/button_style"
            android:text="@string/open_button"
            android:textColor="#FFFFFF" />
    </LinearLayout>

</LinearLayout>

我怎样才能让它发挥作用? 任何帮助都将受到高度赞赏。

代码(更新后 - 未更改):

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <ListView
        android:id="@android:id/list"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_above="@+id/bottomLinearLayout" />

    <LinearLayout
        android:id="@+id/bottomLinearLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="0dp"
        android:background="@drawable/darkbg"
        android:gravity="center_horizontal"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/butEdit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="5dp"
            android:background="@drawable/button_style"
            android:text="@string/delete_button"
            android:textColor="#FFFFFF" />

        <Button
            android:id="@+id/butOpen"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="5dp"
            android:background="@drawable/button_style"
            android:text="@string/open_button"
            android:textColor="#FFFFFF" />
    </LinearLayout>

</RelativeLayout>

enter image description here

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:-1)

尝试给listview赋予权重

 android:layout_weight="1"

您的ListView将如下:

  <ListView
    android:id="@android:id/list"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="1" >
</ListView>

答案 1 :(得分:-1)

将重量9或8放在滚动视图中(将滚动视图中的列表视图括起来),然后将重量1或2放在包含按钮的Linearlayout中,不要更改为相对布局。 同时在两者中加上height = 0dp。