将按钮放在屏幕中央

时间:2013-01-10 16:52:48

标签: android android-layout

这是我的布局。我希望这些按钮应该位于屏幕的中心,无论是移动还是平板电脑。我怎样才能做到这一点。请帮帮我。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:id="@+id/scrollView" xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/ubc_grey">
    <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content">

        <TextView android:id="@+id/titleTextView" android:layout_width="fill_parent" android:layout_height="60dp"
            android:background="@color/slate_grey"  android:text="@string/title_home_map_view" android:textColor="@color/white"
            android:gravity="center" android:textSize="20dp"/>

        <LinearLayout android:id="@+id/linearLayout" android:layout_width="fill_parent" android:layout_height="fill_parent"
            android:orientation="vertical" android:layout_centerInParent="true" android:layout_below="@+id/titleTextView" 
            android:layout_centerHorizontal="true" android:gravity="center"  android:layout_marginTop="20dp">

            <Button android:id="@+id/category" android:layout_width="250dp" android:layout_height="60dp"
                android:text="@string/choose_category" android:textColor="@color/white" android:textSize="18dp"
                android:layout_gravity="center"/>

            <Button android:id="@+id/range" android:layout_width="250dp" android:layout_height="60dp"
                android:text="@string/select_range" android:textColor="@color/white" android:layout_marginTop="20dp" 
                android:textSize="18dp" android:layout_gravity="center"/>

            <Button android:id="@+id/useMyCurrentLocation" android:layout_width="250dp" android:layout_height="60dp"
                 android:layout_marginTop="20dp" android:textColor="@color/white" android:text="@string/button_use_my_current_location" 
                 android:layout_gravity="center" android:textSize="18dp"/>
        </LinearLayout>

    </RelativeLayout>
</ScrollView>

这就是我想要实现的目标

enter image description here

3 个答案:

答案 0 :(得分:1)

enter image description here

你有第4行

    <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" lay>

您可能需要删除其末尾的位置:)

干杯

答案 1 :(得分:0)

xml for you:

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" android:layout_height="wrap_content"
    android:background="@color/ubc_grey">
        <LinearLayout
            android:id="@+id/linearLayout"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_centerInParent="true"
            android:layout_marginTop="20dp"
            android:gravity="center"
            android:orientation="vertical" >
            <TextView
                android:id="@+id/titleTextView"
                android:layout_width="fill_parent"
                android:layout_height="60dp"
                android:background="@color/slate_grey"
                android:gravity="center"
                android:text="@string/title_home_map_view"
                android:textColor="@color/white"
                android:textSize="20dp" />
            <Button
                android:id="@+id/category"
                android:layout_width="250dp"
                android:layout_height="60dp"
                android:text="@string/choose_category"
                android:textColor="@color/white"
                android:textSize="18dp" />
            <Button
                android:id="@+id/range"
                android:layout_width="250dp"
                android:layout_height="60dp"
                android:layout_gravity="center"
                android:layout_marginTop="20dp"
                android:text="@string/select_range"
                android:textColor="@color/white"
                android:textSize="18dp" />
            <Button
                android:id="@+id/useMyCurrentLocation"
                android:layout_width="250dp"
                android:layout_height="60dp"
                android:layout_gravity="center"
                android:layout_marginTop="20dp"
                android:text="@string/button_use_my_current_location"
                android:textColor="@color/white"
                android:textSize="18dp" />
        </LinearLayout>
    </RelativeLayout>

答案 2 :(得分:0)

请检查此xml代码。在这里,我删除了你的颜色和字符串部分。

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="center_vertical"
    android:gravity="center_horizontal"
    android:orientation="vertical" >

    <LinearLayout
        android:id="@+id/linearLayout"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:gravity="center_vertical"
        android:orientation="vertical" >

        <Button
            android:id="@+id/category"
            android:layout_width="250dp"
            android:layout_height="60dp"
            android:text="choose_category"
            android:textSize="18dp" />

        <Button
            android:id="@+id/range"
            android:layout_width="250dp"
            android:layout_height="60dp"
            android:layout_marginTop="20dp"
            android:text="select_range"
            android:textSize="18dp" />

        <Button
            android:id="@+id/useMyCurrentLocation"
            android:layout_width="250dp"
            android:layout_height="60dp"
            android:layout_marginTop="20dp"
            android:text="button_use_my_current_location"
            android:textSize="18dp" />
    </LinearLayout>
</LinearLayout>

您还可以看到下面附带的屏幕截图:

enter image description here

希望你明白这一点。

随时发表评论。