任何方式在彼此旁边有一个2个按钮,填充宽度而没有多个xml文件?

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

标签: android android-layout

我想知道是否可以在任何屏幕尺寸的情况下使用按钮旁边的按钮,但不设计多个xml布局。
可能吗? 我已经找到了这些信息,但我尝试了这一点,但不是出于我的目的:Android: Align LinearLayout center for all screen sizes

这是我的布局:

<?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" >

        <Button
            android:layout_weight="1"
            android:id="@+id/btnPersonalInfo"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            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:layout_weight="1"
            android:id="@+id/btnLawyerInfo"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            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" />

        <Button
            android:id="@+id/btnSharesInfo"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            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_margin="10dp"
            android:layout_marginLeft="10dp"
            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" />

        <Button
            android:id="@+id/btnNews"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            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_margin="10dp"
            android:layout_marginLeft="10dp"
            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" />

        <Button
            android:id="@+id/btnSync"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            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_margin="10dp"
            android:layout_marginLeft="10dp"
            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>

</ScrollView>

在我的2个第一个按钮中,我设置了android:layout_weight =“1”,但没什么好开心的。

2 个答案:

答案 0 :(得分:1)

使用android:layout_weight属性,如下所示:

<Button
    android:layout_weight="1"
    ... />

答案 1 :(得分:1)

当您将按钮的重量设置为数字时,其宽度或高度应为0dp

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

此按钮只会向上和向下拉伸,因为它的高度为0dp