如何在屏幕中央制作按钮

时间:2013-05-09 08:49:17

标签: android android-layout

<Button
    android:id="@+id/button1"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:text="Click Me" />

<Button
    android:id="@+id/button2"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/button1"
    android:text="Click me1" />

<Button
    android:id="@+id/button3"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:layout_below="@+id/button1"
    android:text="Click Me2" />

<Button
    android:id="@+id/button4"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/button3"
    android:layout_below="@+id/button2"
    android:text="Click me3" />

我尝试使用相对布局将此代码用于主要活动,但我想在屏幕中央将它们全部同步。有人可以在这帮助我吗?

我希望实现一个输出,使其看起来像:

       Button1    Button2
       Button3    Button4

整个集合应该集中在屏幕的中心,无论屏幕尺寸如何。

4 个答案:

答案 0 :(得分:3)

使用LinearLayout和layout_width =“maych_parent”,layout_height =“match_parent”,gravity =“center”,orientation =“vertical”

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  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/button1"
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:text="Click Me" />

    <Button
        android:id="@+id/button2"
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:text="Click me1" />
</LinearLayout>

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

    <Button
        android:id="@+id/button3"
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:text="Click Me2" />

    <Button
        android:id="@+id/button4"
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:text="Click me3" />
</LinearLayout>


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

    <Button
        android:id="@+id/button3"
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:text="Click Me2" />

    <Button
        android:id="@+id/button4"
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:text="Click me3" />
</LinearLayout>

</LinearLayout>

答案 1 :(得分:0)

试试这个:

layout_width="fill_parent"
layout_marginLeft="10dip"
layout_marginRight="10dip"

您还可以使用Relative layout并将孩子设置为android:layout_centerInParent="true"

答案 2 :(得分:0)

调整layout_y和_x然后它将放在中心

<Button
android:id="@+id/Button01"
android:layout_width="188px"
android:layout_height="100px"
android:text="A"
android:layout_y="50px" android:layout_x="65px" android:textSize="48sp"/>

答案 3 :(得分:0)

使用重力中心

的Linearlayout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

<Button
    android:id="@+id/button1"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:text="Click Me" />

<Button
    android:id="@+id/button2"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/button1"
    android:text="Click me1" />

<Button
    android:id="@+id/button3"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:layout_below="@+id/button1"
    android:text="Click Me2" />

<Button
    android:id="@+id/button4"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/button3"
    android:layout_below="@+id/button2"
    android:text="Click me3" />


</LinearLayout>

Output