如何在线性布局中对齐图像垂直中心

时间:2010-01-21 22:21:40

标签: android

我有以下布局,左边是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>

2 个答案:

答案 0 :(得分:15)

在第一个示例中,您要做的就是用android:gravity替换ImageView上的android:layout_gravity。 这就是全部:))

答案 1 :(得分:9)

我将其更改为一个相对布局,里面只有三个视图。您也可以使用android:layout_centerHorizontalandroid:layout_centerVertical来对齐内容。