即使在设置CenterHorizo​​ntal = true后,RelativeLayout子项也会向右移动

时间:2014-12-11 07:12:50

标签: android relativelayout

我正在尝试使用底部的“查看”按钮创建一个相对布局,并在其顶部显示一个登录按钮。问题是尽管我已经将孩子对准父母的中心,但它仍然向右移动。

以下是该视图的屏幕截图。

enter image description here

和xml代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
     >

            <LinearLayout
                android:id="@+id/screenOneFooter"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:orientation="horizontal"
                android:weightSum="4" >

                <View
                    android:id="@+id/one_view1"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/circledarkstyle" />

                <View
                    android:id="@+id/one_view2"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/circlestyle_g1" />

                <View
                    android:id="@+id/one_view3"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/circlestyle_g1" />

                <View
                    android:id="@+id/one_view4"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/circlestyle_g1" />
            </LinearLayout>

                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_above="@+id/screenOneFooter"
                    android:layout_alignParentStart="false"
                    android:layout_centerHorizontal="true"
                    android:background="#e86e6d"
                    android:drawablePadding="@dimen/com_facebook_likebutton_compound_drawable_padding"
                    android:drawableRight="@drawable/com_facebook_inverse_icon"
                    android:gravity="top|bottom|center_vertical|center_horizontal"
                    android:onClick="onLoginClick"
                    android:paddingBottom="@dimen/com_facebook_loginview_padding_bottom"
                    android:paddingLeft="@dimen/com_facebook_loginview_padding_left"
                    android:paddingRight="@dimen/com_facebook_loginview_padding_right"
                    android:paddingTop="@dimen/com_facebook_loginview_padding_top"
                    android:text="@string/com_facebook_loginview_log_in_button"
                    android:textColor="@color/com_facebook_loginview_text_color"
                    android:textSize="@dimen/com_facebook_loginview_text_size"
                    android:textStyle="bold" />



</RelativeLayout>

向左中央虚线拖动按钮没有任何效果。它转回去了。任何想法?

编辑:

直到屏幕尺寸为4“的设备,布局儿童似乎居中。在4”(精确到4.65“)和屏幕尺寸以上之后,它如上面的屏幕截图所示。很奇怪?我在这里遗漏了什么? -

1 个答案:

答案 0 :(得分:0)

这是你想要的吗?

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
     >

            <LinearLayout
                android:id="@+id/screenOneFooter"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:orientation="horizontal"
                android:weightSum="4" >

                <View
                    android:id="@+id/one_view1"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/ic_launcher" />

                <View
                    android:id="@+id/one_view2"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/ic_launcher" />

                <View
                    android:id="@+id/one_view3"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/ic_launcher" />

                <View
                    android:id="@+id/one_view4"
                    android:layout_width="12dp"
                    android:layout_height="12dp"
                    android:layout_marginLeft="7dp"
                    android:layout_marginRight="7dp"
                    android:background="@drawable/ic_launcher" />
            </LinearLayout>

                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentStart="false"
                    android:layout_alignParentTop="true"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="25dp"
                    android:background="#e86e6d"
                    android:gravity="top|bottom|center_vertical|center_horizontal"
                    android:onClick="onLoginClick"
                    android:text="@string/hello_world"
                    android:textStyle="bold" />

</RelativeLayout>

仅供参考,请参阅屏幕截图。enter image description here