如何更改java中按钮的对齐方式?

时间:2016-04-24 14:01:07

标签: java android android-layout android-studio

所以,我想制作一个用于3个不同表的添加活动。 在最后一个我希望日期EditText消失。

我知道如何让它消失,但我希望布局也改变,这就是日期EditText出现时的样子

3 EditTexts and Button with alignbottom set to date EditText

这就是我将日期EditText设置为

时的样子

2 EditTexts and Button with alignbottom set to the gone EditText

2 个答案:

答案 0 :(得分:1)

尝试这样的布局:

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

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

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="2"
            android:orientation="vertical">

            <EditText
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"/>

            <EditText
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"/>

            <EditText
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:visibility="visible"/>

        </LinearLayout>

        <Button
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"/>

    </LinearLayout>

</LinearLayout>

问题是,您需要另一个支持布局,这是我的层次结构中的第二个,它将具有android:layout_height =“wrap_content”,因此当您将可见性设置为其中一个EditTexts时,它是将根据另外两个EditTexts高度更改LinearLayout的高度,其中Button的高度始终为android:layout_height =“match_parent”。

答案 1 :(得分:-1)

LinearLayout包含EditText的垂直方向,包含在包含LinearLayout的水平Button中。如果LinearLayoutButton都具有包装内容的高度,那么无论有多少EditText,它们都会适应

enter image description here

enter image description here

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true">

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

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Text"
            android:id="@+id/textView" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Text"
            android:id="@+id/textView2" />

        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="New Text"
            android:id="@+id/textView3" />
    </LinearLayout>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:text="New Button"
        android:id="@+id/button"
        android:layout_weight="1"
        android:background="#3e3e3e" />
</LinearLayout>