无填充定心按钮

时间:2017-03-15 20:27:48

标签: android button layout

我目前正在尝试在线性布局中设置一个启动屏幕,以便有3个按钮,每个按钮在它们之间具有相等的空间,并且都在屏幕上居中。到目前为止,我的设置是非常基本的格式:

android:id="@+id/helpButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/help" />

然而,只要我为按钮增加重量,垂直部分就会伸展以填充多余的空间,而不是像我预期的那样只按下按钮的中心。即使我手动使用dp,垂直部分仍然会伸展。有人可以解释这个的原因以及如何解决它?

2 个答案:

答案 0 :(得分:2)

我创建了整个xml文件:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1">

        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="Button" />

    </FrameLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1">

        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="Button" />

    </FrameLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1">

        <Button
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="Button" />

    </FrameLayout>
</LinearLayout>

enter image description here

答案 1 :(得分:0)

给这个配置一个镜头:

android:id="@+id/helpButton"
android:layout_width="wrap_content"
android:layout_weight="1.0"
android:layout_height="0dip"
android:layout_gravity="center_vertical"
android:text="@string/help"