2014-12-11 4 views
1

Я пытаюсь создать относительную компоновку с кнопками View внизу и кнопку входа в нее. Проблема в том, что я выровнял ребенка как центр по отношению к родительскому, он продолжает смещаться вправо.RelativeLayout ребенок смещается вправо даже после установки CenterHorizontal = true

Вот скриншот вида.

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" , чтобы быть точным) и выше экрана sizea, его, как показано на рисунке выше Weird.? ? Я-то здесь отсутствует -

+0

Try андроида: layout_gra?. vity = "center_horizontal" в кнопке. Я думаю, что гравитация не влияет на относительный макет. Вы должны выровнять дочерний элемент относительно родителя. –

+1

Он центрируется, когда я копирую ваш код. Может быть, что-то в styles.xml? Как прокладка или край с одной стороны. –

+0

@gauravjain Я предполагаю 'android: layout_centerHorizontal =" true "' выполняет работу 'android: layout_gravity =" center_horizontal "'. Все равно никаких изменений! – RmK

ответ

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