如何在ListView下对齐按钮?

时间:2013-08-26 12:49:43

标签: android layout

我正在尝试在项目列表下对齐多个按钮。

它出现如下:

enter image description here

但我需要它看起来如下:

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:padding="7dp"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true">
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/myImage" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="[TextView text]"
            android:textSize="20sp"
            android:layout_gravity="center" />
    </LinearLayout>
    <TextView
        android:id="@+id/lblOverviewText"
        android:textStyle="bold"
        android:textSize="15sp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/linearLayout1" />
    <TextView
        android:id="@+id/lblEngineer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/lblOverviewText" />
    <TextView
        android:id="@+id/lblAlarmEvents"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/lblEngineer" />
    <ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_below="@+id/lblAlarmEvents" />
    <LinearLayout
        android:id="@+id/linearLayoutSetUnsetButtons"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_below="@+id/list">
        <ImageButton
            android:id="@+id/btnFullSet"
            android:background="@null"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:text="Full Set"
            android:layout_margin="5dp"
            android:src="@drawable/lock_128"
            android:scaleType="fitCenter" />
        <ImageButton
            android:id="@+id/btnPartsetA"
            android:background="@null"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:text="Part A"
            android:layout_alignParentTop="true"
            android:layout_margin="5dp"
            android:src="@drawable/PartSetA_128"
            android:scaleType="fitCenter" />
        <ImageButton
            android:id="@+id/btnPartsetB"
            android:background="@null"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:text="Part B"
            android:layout_alignParentTop="true"
            android:layout_margin="5dp"
            android:src="@drawable/PartSetB_128"
            android:scaleType="fitCenter" />
        <ImageButton
            android:id="@+id/btnUnset"
            android:background="@null"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:text="Unset"
            android:layout_alignParentTop="true"
            android:layout_margin="5dp"
            android:src="@drawable/Unset_128"
            android:scaleType="fitCenter"
            android:visibility="gone" />
    </LinearLayout>
</RelativeLayout>

2 个答案:

答案 0 :(得分:1)

试试这种方式

制作listview wrap_content

<ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/lblAlarmEvents" />

<LinearLayout
        android:id="@+id/linearLayoutSetUnsetButtons"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center"
        android:layout_alignParentBottom="true"
        android:layout_below="@+id/list">

答案 1 :(得分:0)

XML文件将是这样的:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="7dp"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true">
    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/myImage" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="[TextView text]"
        android:textSize="20sp"
        android:layout_gravity="center" />
</LinearLayout>
<TextView
    android:id="@+id/lblOverviewText"
    android:textStyle="bold"
    android:textSize="15sp"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/linearLayout1" />
<TextView
    android:id="@+id/lblEngineer"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/lblOverviewText" />
<TextView
    android:id="@+id/lblAlarmEvents"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/lblEngineer" />
<ListView
    android:id="@android:id/list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_below="@+id/lblAlarmEvents" />
<LinearLayout
    android:id="@+id/linearLayoutSetUnsetButtons"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_below="@+id/list">
    <ImageButton
        android:id="@+id/btnFullSet"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Full Set"
        android:layout_margin="5dp"
        android:src="@drawable/lock_128"
        android:scaleType="fitCenter" />
    <ImageButton
        android:id="@+id/btnPartsetA"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Part A"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:src="@drawable/PartSetA_128"
        android:scaleType="fitCenter" />
    <ImageButton
        android:id="@+id/btnPartsetB"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Part B"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:src="@drawable/PartSetB_128"
        android:scaleType="fitCenter" />
    <ImageButton
        android:id="@+id/btnUnset"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Unset"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:src="@drawable/Unset_128"
        android:scaleType="fitCenter"
        android:visibility="gone" />
</LinearLayout>

或者如果您希望图像按钮的父布局作为页脚设置xml,请执行以下操作:

XML文件将是这样的:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="7dp"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true">
    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/myImage" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="[TextView text]"
        android:textSize="20sp"
        android:layout_gravity="center" />
</LinearLayout>
<TextView
    android:id="@+id/lblOverviewText"
    android:textStyle="bold"
    android:textSize="15sp"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/linearLayout1" />
<TextView
    android:id="@+id/lblEngineer"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/lblOverviewText" />
<TextView
    android:id="@+id/lblAlarmEvents"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/lblEngineer" />
<ListView
    android:id="@android:id/list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_below="@+id/lblAlarmEvents" />
<LinearLayout
    android:id="@+id/linearLayoutSetUnsetButtons"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"        
    android:layout_alignParentBottom="true">
    <ImageButton
        android:id="@+id/btnFullSet"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Full Set"
        android:layout_margin="5dp"
        android:src="@drawable/lock_128"
        android:scaleType="fitCenter" />
    <ImageButton
        android:id="@+id/btnPartsetA"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Part A"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:src="@drawable/PartSetA_128"
        android:scaleType="fitCenter" />
    <ImageButton
        android:id="@+id/btnPartsetB"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Part B"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:src="@drawable/PartSetB_128"
        android:scaleType="fitCenter" />
    <ImageButton
        android:id="@+id/btnUnset"
        android:background="@null"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:text="Unset"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:src="@drawable/Unset_128"
        android:scaleType="fitCenter"
        android:visibility="gone" />
</LinearLayout>