如何在不改变视图大小的情况下拉伸内容?

时间:2015-12-15 18:06:47

标签: android

我有一个布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:background="@color/white"
              android:gravity="center_horizontal"
              android:padding="10dp">

        <ImageView android:id="@+id/logo"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:background="@null"/>

        <TextView android:id="@+id/greeting"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/greeting"
                android:textSize="30sp"/>

            <Button
                    android:id="@+id/button1"
                    android:text="@string/button1"
                    android:textSize="20sp"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@drawable/button"
                    android:padding="10dp"/>
            <Button
                    android:id="@+id/button2"
                    android:text="@string/button2"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:textSize="20sp"
                    android:background="@drawable/button2"
                    android:padding="10dp"/>


</LinearLayout>

如何在不改变视图本身高度的情况下,将四个视图拉伸到屏幕的整个高度彼此等距离?当显示器的高度增加时,我想增加视图之间的距离,而不是它们的高度。

P.S。也许我应该关注android: layout_gravity = "fill_vertical"?我试图使用这个属性,但它并没有帮助我。有谁知道它究竟是如何运作的?

我想得到这样的东西:

enter image description here

1 个答案:

答案 0 :(得分:1)

LinearLayout更改为GridLayout,定义

android:layout_rowWeight="1"
android:layout_gravity="bottom|center_horizontal" 
每个视图

enter image description here