android LInear布局居中按钮

时间:2015-07-28 11:50:50

标签: android

在线性布局中,我试图将按钮居中,但我不知道对于按钮建议居中的编码是什么

这是我的线性布局

    <ScrollView
    android:layout_width="match_parent"
    android:layout_height="400dp"
    android:orientation="vertical" >

    <HorizontalScrollView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <LinearLayout
            android:id="@+id/table"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal" >
            <Button
                android:layout_width="98"
                android:layout_height="58"
                android:layout_gravity="center"
                android:text="S T A G E"
                android:id="@+id/stage1"
                android:background="#65f077cc" />

        </LinearLayout>
    </HorizontalScrollView>

先谢谢你

3 个答案:

答案 0 :(得分:1)

首先删除可能影响它的内容。方向最好定义在尽可能高的水平,就像在您的父LinearLayout中一样。从Button,删除(暂时,如果您仍然认为自己需要,请添加以后)android:orientation="horizontal"android:layout_gravity="right|center_vertical"

同时将按钮的高度固定为android:layout_height="wrap_content"

LinearLayout,请添加

android:gravity="center"

以下是对gravitylayout_gravityhttp://sandipchitale.blogspot.fi/2010/05/linearlayout-gravity-and-layoutgravity.html

的差异的一个很好的解读

此外,不推荐使用fill_parent,因此您应该在适当情况下切换到match_parent

编辑:最终版面

    <LinearLayout
        android:id="@+id/table"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="horizontal" >
        <Button
            android:layout_width="98"
            android:layout_height="58"
            android:text="S T A G E"
            android:id="@+id/stage1"
            android:background="#65f077cc" />

答案 1 :(得分:0)

试试这个。为按钮增加重量。 机器人:重量=&#34; 1&#34;

答案 2 :(得分:0)

如果您想将项目置于屏幕中央,请使用相对布局,因为线性布局用于显示行中的项目。

赞这个

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

<Button
    android:id="@+id/stage1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:background="#65f077cc"
    android:text="S T A G E" />


</RelativeLayout>

如果您想将项目置于行中心,请使用以下示例。

<?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:orientation="vertical" >

<Button
    android:id="@+id/stage1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:background="#65f077cc"
    android:text="S T A G E" />

</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/stage1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#65f077cc"
    android:text="S T A G E" />

</LinearLayout>