2010-01-21 86 views
9

我有以下佈局,左邊是1個圖標,右邊是2個文本視圖(堆疊在彼此之上)。我希望text1垂直居中在面板中,當我使text2 Visible.GONE。你能告訴我我該怎麼做?如何在一個線性佈局中對齊圖像垂直中心

<RelativeLayout android:id="@+id/panel" 
     android:layout_width="fill_parent" 
     android:layout_height="?android:attr/listPreferredItemHeight"> 
    <ImageView 
     android:id="@+id/icon1" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:layout_gravity="center_vertical"/> 
    <TextView android:id="@+id/text1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@id/icon1" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:layout_gravity="center_vertical"/> 
    <TextView android:id="@+id/text2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@id/icon1" 
     android:layout_below="@id/text1" 
     android:textAppearance="?android:attr/textAppearanceSmall"/> 
    </RelativeLayout> 
+0

android:layout_alignParentTop =「true」 - 這就是爲什麼 – 2010-01-22 02:37:00

回答

9

我會將其更改爲只有三個視圖內的一個相對佈局。你也可以使用android:layout_centerHorizontal,android:layout_centerVertical來對齊內容。

+0

謝謝。有沒有辦法使用當前的LinearLayout修復對齊? – hap497 2010-01-22 00:26:04

15

在第一個示例中,您只需用android:layout_gravity替換ImageView上的android:gravity即可。 這就是全部:)