2011-10-27 72 views
5

我正在使用RelativeLayout来放置视图。现在我想在第一个视图下面再添加一个视图,并且应该将中间视为第一个视图。 但似乎没有任何选项,称为像android:layout_alignCenter .. 我怎样才能实现这一任务?其他视图下面的中心视图

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

      <TextView 
     android:text="Blaa" 
     android:id="@+id/TextView1" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_marginLeft="100dp" 
     android:gravity="center" 
     /> 
      <TextView 
     android:text="Foo" 
     android:id="@+id/TextView2" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:layout_below="@+id/TextView1" 
      --- NEED STH THAT ALIGNS THIS SECOND VIEW CENTRAL UNDER THE FIRST VIEW -- 
     /> 
</RelativeLayout> 
+1

alignParentCenter ... – Warpzit

+0

这将对准我查看中心在父,但我想中央下文称对齐到第二视图 - 不好意思问题有点含糊不清的 – Salo

+0

用'android:gravity =“center”'你让它们都居中,因此TextView2在TextView1下居中。 – iCantSeeSharp

回答

0

我也找过答案。我认为最好的选择是把它们放在一个LinearLayout中..我不确定,但我相信夸大很多布局是一个密集的过程,所以它可能不是最好的选择,但它是我能想到的唯一的东西。

2

这是一个老问题,但仍然没有答案,所以......

您可以同时开始和以同样的方式排列的两种观点到底。这将覆盖第二个宽度属性,并使其宽度与第一个一样宽,但也会将其移动到第一个宽度。如果要将第二个视图居中,则可以使用重力或填充。第二种观点去这样:

<TextView 
    android:id="@+id/TextView2" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    android:layout_below="@+id/TextView1" 
    android:layout_alignLeft="@+id/TextView1" 
    android:layout_alignRight="@+id/TextView1" 
    android:gravity="center" 
    android:text="Foo" /> 
0
<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:gravity="top" > 

    <TextView 
     android:id="@+id/TextView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_marginLeft="100dp" 
     android:gravity="center" 
     android:text="Blaa" /> 

    <RelativeLayout 
     android:id="@+id/rel_main" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/TextView1" 
     android:layout_alignRight="@+id/TextView1" 
     android:layout_below="@+id/TextView1" 
     android:gravity="center" > 

     <TextView 
      android:id="@+id/TextView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerInParent="true" 
      android:text="Foo" /> 
    </RelativeLayout> 

</RelativeLayout>