20
<Button
    android:id="@+id/o_pharmacy"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:drawableLeft="@drawable/p2"
    android:text="@string/o_pharmacy"
    android:textSize="26sp" />

<Button
    android:id="@+id/lab"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:drawableLeft="@drawable/lab"
    android:text="@string/lab"
    android:textSize="26sp" />

<Button
    android:id="@+id/i_pharmacy"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:drawableLeft="@drawable/p1"
    android:text="@string/i_pharmacy"
    android:textSize="26sp" />

I tried above code to display 3 buttons in Liner layout. It works but I need to put space between the two buttons.

4

9 回答 9

31
android:layout_margin="10dp"

对于每个按钮

于 2013-08-03T04:53:08.060 回答
20

如果您的 LinearLayout 的方向是垂直的,请使用

android:layout_marginTop="10dp"

否则,使用

android:layout_marginLeft="10dp"
于 2013-08-03T04:55:35.427 回答
4
<Button
    android:id="@+id/o_pharmacy"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:drawableLeft="@drawable/p2"
    android:text="@string/o_pharmacy"
    android:textSize="26sp" />

<Button
    android:id="@+id/lab"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_margin="25dp"
    android:drawableLeft="@drawable/lab"
    android:text="@string/lab"
    android:textSize="26sp" />

<Button
    android:id="@+id/i_pharmacy"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_margin="25dp"
    android:drawableLeft="@drawable/p1"
    android:text="@string/i_pharmacy"
    android:textSize="26sp" />

尝试这个。

于 2013-08-03T04:54:45.553 回答
2

在水平 LinearLayout 中的 3 个按钮之间留出空间以在中心按钮上使用它的最简单方法:

android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"

如果你有垂直 LinearLayout,你可以使用 marginTop 和 marginBottom。

于 2016-07-08T10:18:37.540 回答
0
 android:layout_marginBottom="50dp"

 android:layout_marginTop="50dp"
于 2013-08-03T05:47:20.500 回答
0
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<Button
                android:id="@+id/o_pharmacy"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"

                android:layout_marginTop="10dip"

                android:drawableLeft="@drawable/p2"
                android:text="@string/o_pharmacy"
                android:textSize="26sp" />

                   <Button
                   android:id="@+id/lab"
                   android:layout_width="fill_parent"
                   android:layout_height="wrap_content"

                   android:layout_marginTop="10dip"

                   android:drawableLeft="@drawable/lab"
                   android:text="@string/lab"
                   android:textSize="26sp" />

                   <Button
                   android:id="@+id/i_pharmacy"
                   android:layout_width="fill_parent"
                   android:layout_height="wrap_content"

                   android:layout_marginTop="10dip"

                   android:drawableLeft="@drawable/p1"
                   android:text="@string/i_pharmacy"
                   android:textSize="26sp" />

我假设您为 LinearLayout 使用垂直方向,否则此代码将没有意义,因为您的按钮是Fill_parent for layout_width。请注意那一行,android:layout_marginTop="10dip"它确保您在按钮之间留出合理的 10 个倾斜空间。当然,您可以增加(或减少)按钮之间的空间。那是你的选择。

希望这能令人满意地回答您的问题。

于 2013-08-03T05:17:31.203 回答
0

最好的办法是在您的 XML 活动中使用 android:layout_marginTop="10dp",因为这样可以在该按钮和其他按钮或小部件之间提供准确的间距。对其余按钮重复此操作。快乐编程!

于 2016-07-08T09:48:03.220 回答
0

我想你可以试试 layout_weight。如果您需要连续 3 个,中间有一些空间。你可以这样做

<LinearLayout
                  android:id="@+id/buttons"
                  android:orientation="horizontal"
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"

                  >

                    <com.google.android.material.button.MaterialButton
                      android:id="@+id/o_pharmacy"
                      android:layout_width="0dp"
                      android:layout_height="64dp"
                      android:layout_weight="1"
                      android:layout_marginLeft="16dp"
                      android:text="@string/o_pharmacy"


                      />

                    <com.google.android.material.button.MaterialButton
                      android:id="@+id/lab"
                      android:layout_width="0dp"
                      android:layout_height="64dp"
                      android:layout_weight="1"
                      android:layout_marginLeft="16dp"
                      android:padding="5dp"
                      android:text="@string/lab"


                      />

                    <com.google.android.material.button.MaterialButton
                      android:id="@+id/i_pharmacy"
                      android:layout_width="0dp"
                      android:layout_height="64dp"
                      android:layout_weight="1"
                      android:layout_marginLeft="16dp"
                      android:layout_marginRight="16dp"
                      android:text="@string/i_pharmacy"


                      />

                </LinearLayout>
于 2019-08-21T05:01:33.563 回答
-1

最好用

 android:textSize="26dp"

代替

android:textSize="26sp"

在各种尺寸的所有设备中获得更好的结果!

于 2013-08-03T05:06:02.303 回答