Android中的Linearlayout间距

时间:2014-01-23 07:01:42

标签: android android-linearlayout

这是我的布局:

的TextView

IMAGEVIEW(可选)

LINEARLAYOUT - 我动态添加按钮

LINEARLAYOUT - 并排放置两个按钮(左按钮和右按钮)

我需要做些什么来确保底部两个线性布局固定在屏幕底部,无论它们占用多少空间?即。第一个线性布局可能有3个按钮占据屏幕的一半以上,这没关系。它只需要位于最后一个线性布局中的左/右按钮上方,该布局固定在底部。

然后我希望我的TextView和我的ImageView在剩余空间中垂直居中。如果没有图像,ImageView将被设置为不可见,因此它只能是需要居中的文本视图。

我一直在玩android:gravity =" bottom&#34 ;, android:layout_height =" 0dip" / android:layout_weight =" 1" (我后来意识到这只会给文本/图像视图提供50%,而对于2种线性布局只提供50%),但我无法得到我想要的结果。

任何建议表示赞赏。

1 个答案:

答案 0 :(得分:1)

你必须采取RelativeLayout。 在那里你可以更好地控制视图的相对位置,如下所示:

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
>
    <TextView 
        android:id="@+id/textView"
        android:layout_above="@+id/imageView"
        android:layout_centerVertical="true"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
    />

    <ImageView 
        android:id="@+id/imageView"
        android:layout_above="@+id/ll_1"
        android:layout_centerVertical="true"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
    />

    <LinearLyout 
        android:id="@+id/ll_1"
        android:layout_above="@+id/ll_2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
    />

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


</RelativeLayout>