linearlayout垂直居中于两个linearlayout之间

时间:2012-05-08 14:05:04

标签: android android-linearlayout vertical-alignment

我需要做一个像图片中那样的布局,使用3 linearlayout,或relativelayout或类似的东西。中间的线性布局必须根据顶部的第一个ll和底部的第三个ll之间的自由空间来调整高度。 底部的ll必须固定在那里。 enter image description here

我该怎么办?

谢谢,Mattia

2 个答案:

答案 0 :(得分:2)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1">

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

    </LinearLayout>

</LinearLayout>

这里重要的是第二个布局中的android:layout_weight="1"

答案 1 :(得分:0)

使用此

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

    <LinearLayout 
        android:id="@+id/ui_main_header"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:orientation="horizontal"/>


    <LinearLayout 
        android:id="@+id/ui_main_footer"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:orientation="horizontal"/>

    <LinearLayout 
        android:id="@+id/ui_main_center"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"

        android:layout_below="@id/ui_main_header"
        android:layout_above="@id/ui_main_footer"

        android:orientation="vertical"/>

</RelativeLayout>