如何用不同的内容调整彼此旁边的2个按钮的高度

时间:2013-11-30 14:00:07

标签: android android-layout

我有2列布局,如下所示。问题是当我设置按钮高度以包装内容时,其中一个按钮内容被包装到下一行。我想知道是否可以设置两个高度相同的按钮?

enter image description here

这是布局文件:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/background" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/btnPersonalInfo"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="#FFC40D"
                android:drawableTop="@drawable/person"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/personal_info"
                android:textColor="@color/button_text" />

            <Button
                android:id="@+id/btnLawyerInfo"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="#EE1111"
                android:drawableTop="@drawable/lawyer"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/lawyer_info"
                android:textColor="@color/button_text" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/btnSharesInfo"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="#2976DE"
                android:drawableTop="@drawable/shares"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/buy_sell"
                android:textColor="@color/button_text" />

            <Button
                android:id="@+id/btnFinancialInfo"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="#902293"
                android:drawableTop="@drawable/wallet"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/financial_info"
                android:textColor="@color/button_text" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/btnNews"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="#0D9A0E"
                android:drawableTop="@drawable/news"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/news"
                android:textColor="@color/button_text" />

            <Button
                android:id="@+id/btnMessages"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="#CA5A35"
                android:drawableTop="@drawable/messages"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/messages"
                android:textColor="@color/button_text" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="horizontal" >

            <Button
                android:id="@+id/btnSync"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@color/pink"
                android:drawableTop="@drawable/sync"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/update"
                android:textColor="@color/button_text" />

            <Button
                android:id="@+id/btnExit"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="#AF274D"
                android:drawableTop="@drawable/quit"
                android:onClick="clickHandler"
                android:paddingBottom="10dp"
                android:paddingLeft="20dp"
                android:paddingRight="20dp"
                android:paddingTop="10dp"
                android:text="@string/exit"
                android:textColor="@color/button_text" />
        </LinearLayout>
    </LinearLayout>

</ScrollView>

1 个答案:

答案 0 :(得分:1)

将所有Button s'高度设置为match_parent,但将LinearLayout s'高度保持为wrap_content

这应该使Button垂直扩展以填充LinearLayout,但LinearLayout s本身不会增长,除非他们需要。