如何在LinearLayout中分隔出项目?

时间:2011-05-23 22:57:06

标签: java android eclipse android-layout android-linearlayout

我想创建一个类似于:

的工具栏

enter image description here

如何在XML中执行此操作?这是我目前的样子:

<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/toolbarLinearLayout" android:background="@color/solid_yellow">
        <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/replyButton" android:text="Reply"></Button>
        <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="RT" android:id="@+id/rtButton"></Button>
        <Button android:id="@+id/dmButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="DM"></Button>
    </LinearLayout>

3 个答案:

答案 0 :(得分:4)

看起来您可能需要LinearLayout的padding属性,例如

android:padding="5dip"

要使每个项目占用相同的空间,请使用layout_weight,例如

 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/toolbarLinearLayout" android:background="@color/solid_yellow">
    <Button android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:id="@+id/replyButton" android:text="Reply"></Button>
    <Button android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:text="RT" android:id="@+id/rtButton"></Button>
    <Button android:id="@+id/dmButton" android:layout_width="fill_parent" android:layout_weight="1" android:layout_height="wrap_content" android:text="DM"></Button>
</LinearLayout>

只要所有元素具有相同的重量,它们就占据相同的空间。 layout_width =“fill_parent”将确保整个栏都被填满。

答案 1 :(得分:3)

将工具栏定义如下:

<LinearLayout ...>
    <Button android:id="@+id/replyButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ...
        />
    <View
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        />
    <Button ...
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        />
    <!-- etc. -->
</LinearLayout>

所有额外空间都将分配给按钮之间的透明视图。

答案 2 :(得分:0)

为linearlayout中的项添加android:layout_margin =“some value”。这对我有用。