Reputation: 1514
I have set of buttons at the bottom of screen below listview. But i am unable to get it exactly in the bottom because i am defining height of listview (tabcontent) which is in middle, if i don't predefine height of tabcontent it would overlay button and if i define it would mess up button position in different screen resolutions. So how can i actually achieve buttons at the bottom of screen independent of middle tab content it ? Below is my code :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/formLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TabHost
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" />
<View
android:id="@+id/separator"
android:layout_width="fill_parent"
android:layout_height="2dip"
android:layout_below="@android:id/tabs" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="465dip"
android:layout_above="@+id/btnSend"
android:layout_below="@+id/separator" >
<!-- Scrollview for message data -->
<ScrollView
android:id="@+id/formTab"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="vertical" >
<LinearLayout
android:id="@+id/formLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<View
android:layout_width="fill_parent"
android:layout_height="5dip" />
</LinearLayout>
</ScrollView>
</FrameLayout>
</RelativeLayout>
</TabHost>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_below="@+id/tabcontent"
>
<Button
android:id="@+id/home"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Home"
android:textColor="#000000" />
<Button
android:id="@+id/messages"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Messages"
android:textColor="#000000"/>
<Button
android:id="@+id/history"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="History"
android:textColor="#000000" />
<Button
android:id="@+id/settings"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Settings"
android:textColor="#000000" />
<Button
android:id="@+id/support"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Support"
android:textColor="#000000" />
</LinearLayout>
</LinearLayout>
Upvotes: 0
Views: 857
Reputation: 474
Your LinearLayout with buttons is inside another LinearLayout.
All you have to do is to change your root layout to RelativeLayout then the parameter android:layout_alignParentBottom="true"
of your LinearLayout with buttons will work.
Also you should make the root RelativeLayout to fill the parent.
The whole layout will look like this:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/formLayout"
android:layout_width="fill_parent"
android:layout_height="match_parent" >
<TabHost
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" />
<View
android:id="@+id/separator"
android:layout_width="fill_parent"
android:layout_height="2dip"
android:layout_below="@android:id/tabs" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="465dip"
android:layout_above="@+id/btnSend"
android:layout_below="@+id/separator" >
<!-- Scrollview for message data -->
<ScrollView
android:id="@+id/formTab"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="vertical" >
<LinearLayout
android:id="@+id/formLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<View
android:layout_width="fill_parent"
android:layout_height="5dip" />
</LinearLayout>
</ScrollView>
</FrameLayout>
</RelativeLayout>
</TabHost>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_below="@+id/tabcontent"
>
<Button
android:id="@+id/home"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Home"
android:textColor="#000000" />
<Button
android:id="@+id/messages"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Messages"
android:textColor="#000000"/>
<Button
android:id="@+id/history"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="History"
android:textColor="#000000" />
<Button
android:id="@+id/settings"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Settings"
android:textColor="#000000" />
<Button
android:id="@+id/support"
android:layout_width="wrap_content"
android:layout_height="50dip"
android:layout_weight="1"
android:text="Support"
android:textColor="#000000" />
</LinearLayout>
Upvotes: 1