lilzz
lilzz

Reputation: 5413

Android Layout Listview height adjustment under relativelayout

I would like add a listview or tableview occupy 2/3 of the screen and then there would a giant button at the center just beneath the listview. Right now the problem is the listview take up the whole height of the screen. I couldn't adjust the height on the graphical layout. I would like to take up only 5 Items height size. Beneath would be button center on screen,

<?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>

Upvotes: 2

Views: 3516

Answers (2)

    <?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>

Upvotes: 4

Nick Badal
Nick Badal

Reputation: 671

From what you said in your question, it sounds like a vertical LinearLayout would work better for you. That way you could have the ListView take up exactly two thirds of the screen by placing two views inside the top level LinearLayout, and use weights to distribute the views on the screen.

For example:

<?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>

Upvotes: 3

Related Questions