RelativeLayout与右侧的ImageView和图像左侧的3个文本视图,一个在另一个下面

时间:2011-06-19 02:21:46

标签: android relativelayout

我正在尝试使用RelativeLayout在左侧显示图像,并在图像右侧显示3个文本视图,一个在另一个下面。类似的解释如下:http://android-developers.blogspot.com/2009/02/android-layout-tricks-1.html。我遇到的问题是第3个文本视图没有显示。

我的代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="fill_parent" android:layout_height="?android:attr/listPreferredItemHeight"
    android:padding="2dip">

    <ImageView android:layout_width="96dip"
        android:layout_height="96dip" android:layout_alignParentTop="true"
        android:layout_alignParentBottom="true" android:layout_marginRight="2dip"
        android:id="@+id/myIcon" android:src="@drawable/icon" />

    <TextView android:id="@+id/Line1" android:layout_width="fill_parent"
        android:layout_height="30dip" android:layout_toRightOf="@id/myIcon"
        android:layout_alignParentRight="true" android:text="Line 1" />

    <TextView android:layout_width="fill_parent"
        android:layout_height="30dip" android:layout_toRightOf="@id/myIcon"
        android:layout_below="@id/Line1"
        android:text="Line 2" android:id="@+id/Line2" />

    <TextView android:layout_width="fill_parent"
        android:layout_height="30dip" android:layout_toRightOf="@id/myIcon"
        android:layout_below="@id/Line2"
        android:id="@+id/Line3" android:text="Line 3" />
</RelativeLayout>

这可能是一件非常简单或明显的事情,我要么做错了,要么忘了做,但我真的可以用一双新眼睛看一眼。 谢谢!

1 个答案:

答案 0 :(得分:1)

尝试添加

android:layout_alignParentTop="true"

到您的Line1 TextView。我不确定这是否能解决您的问题,但这是值得尝试的。

此外,关于ID的'+'符号:这些是用于您的ID声明。所以,在你的所有元素中,你会有这样的东西:

android:id="@+id/SomeId"

你拥有的是什么。但是,您不需要它们用于参考目的。所以

android:layout_below="@id/SomeId"

是正确的。将'+'视为声明ID并引用它,您不需要它。

另外:尝试在视图后面放置一些背景颜色,以确保它们显示出您对它们的期望。这是我经常使用的调试技巧。