在linearlayout中水平对齐按钮并使用相等的间距

时间:2013-04-01 19:06:58

标签: android android-linearlayout

我正在尝试使用水平放置等间距的5个按钮进行线性布局,但所有按钮的大小(宽度)应仅为40dp。

我试过这个:

<LinearLayout   android:id="@+id/button_layout"
                    android:background="#DCE1DC"
                    android:orientation="horizontal"
                    android:weightSum="5"
                    android:layout_width="fill_parent"
                    android:layout_height="70dip">

        <Button     android:id="@+id/button_A"
                    android:layout_weight="1"
                    android:layout_height="60dp"
                    android:layout_width="0dp"
                    android:layout_gravity="center_vertical"
                    android:layout_marginLeft="30dp"/>

        <Button     android:id="@+id/button_B"
                    android:layout_weight="1"
                    android:layout_height="60dp"
                    android:layout_width="0dp"
                    android:layout_gravity="center_vertical"
                    android:layout_marginLeft="30dp"/>

        <Button     android:id="@+id/button_C"
                    android:layout_weight="1"
                    android:layout_height="60dp"
                    android:layout_width="0dp"
                    android:layout_gravity="center_vertical"
                    android:layout_marginLeft="30dp"/>

        <Button     android:id="@+id/button_D"
                    android:layout_weight="1"
                    android:layout_height="60dp"
                    android:layout_width="0dp"
                    android:layout_gravity="center_vertical"
                    android:layout_marginLeft="30dp"/>

        <Button     android:id="@+id/button_E"
                    android:layout_weight="1"
                    android:layout_height="60dp"
                    android:layout_width="0dp"
                    android:layout_gravity="center_vertical"
                    android:layout_marginRight="30dp"
                    android:layout_marginLeft="30dp"/>

    </LinearLayout>

它的工作但我需要按钮宽度更小,如何实现这个?

2 个答案:

答案 0 :(得分:2)

我想这会解决你的问题......

正如你所说你正在使用Linearlayout那么你可以做类似的事情......

<LinearLayout
android:layout_width="match_parent"
android:layout_height="yourheight"
android:orientation="horizontal">
<Button 
android:id="@+id/button_name"
android:weight="1"
android:layout_height="wrap_content"
android:layout_width="match_parent" />

<Button 
android:id="@+id/button_name"
android:weight="1"
android:layout_height="wrap_content"
android:layout_width="match_parent" />

//add as many buttons as you want 


<Button 
android:id="@+id/button_name"
android:weight="1"
android:layout_height="wrap_content"
android:layout_width="match_parent" />
</LinearLayout> 

答案 1 :(得分:1)

对于每个按钮,请更改:

android:layout_width="0dp"

对此:

android:layout_width="40dp"