relativelayout下的Android Layout Listview高度调整

时间:2012-01-01 06:59:41

标签: android layout

我想添加一个listview或tableview占据屏幕的2/3,然后在listview下方的中心会有一个巨大的按钮。现在问题是listview占据了屏幕的整个高度。我无法调整图形布局的高度。我想只占用5个物品的高度。下面是屏幕上的按钮中心,

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:id="@+id/relativeLayout"
   android:padding="3dp" xmlns:android="http://schemas.android.com/apk/res/android">
 <ListView android:layout_height="wrap_content"
  android:id="@+id/listView1"
   android:layout_width="fill_parent" android:layout_alignParentLeft="true" 
   android:layout_alignParentTop="true"></ListView>

</RelativeLayout>

2 个答案:

答案 0 :(得分:4)

    <?xml version="1.0" encoding="utf-8"?>

    <RelativeLayout
       android:orientation="vertical"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:id="@+id/relativeLayout"
       android:padding="3dp" xmlns:android="http://schemas.android.com/apk/res/android">

<ListView android:layout_height="fill_parent"
      android:id="@+id/listView1"
      android:layout_above="@+id/button1"
      android:layout_width="fill_parent"></ListView>

<Button android:layout_height="wrap_content"
      android:id="@+id/button1"
      android:layout_alignParentBottom="true"
      android:layout_width="fill_parent"></Button >

    </RelativeLayout>

答案 1 :(得分:3)

根据您在问题中所说的,听起来像垂直的LinearLayout会更适合您。 这样,通过在顶层LinearLayout中放置两个视图,ListView可以占据屏幕的三分之二,并使用权重在屏幕上分布视图。

例如:

<?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:orientation="vertical" >
    <ListView
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="2" >
    </ListView>
    <RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1" >
        <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"/>
    </RelativeLayout>
</LinearLayout>