3个textView的RelativeLayout,最后一个layout_alignParentRight不能正常工作

时间:2015-01-16 22:59:47

标签: android layout android-relativelayout

我有一个RelativeLayout里面有3个TextView,我想在第二个TextView之后放置第3个TextView,但也要与alignParentRight对齐,我正在使用下面的xml,但我得到第3 TextView个重叠在第2 TextView之上的结果。

我试图自己解决这个问题,比如添加

对于带有

的第三个textView,

android:layout_toRightOf="@id/text2"

android:layout_alignParentRight="true"但仍无效。

任何大师能给我一些指示吗? 非常感谢。

enter image description here

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginBottom="0dp"
    android:layout_marginLeft="0dp"
    android:layout_marginRight="0dp"
    android:layout_marginTop="0dp"
    android:orientation="vertical"
    android:paddingBottom="0dp"
    android:paddingLeft="0dp"
    android:paddingRight="0dp"
    android:paddingTop="2dp" >

    <TextView
        android:id="@+id/text1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:background="@drawable/bm_bked"
        android:gravity="bottom"
        android:text="text1"
        android:textSize="12sp" >
    </TextView>

    <TextView
        android:id="@+id/text2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/text1"
        android:text="Title2 long text text text, test long text, test long text"
        android:textSize="16sp" >
    </TextView>

    <TextView
        android:id="@+id/text3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_gravity="bottom"
        android:background="@drawable/bm_bk"
        android:gravity="bottom"
        android:text="text3"
        android:textSize="12sp" >
    </TextView>
</RelativeLayout>

1 个答案:

答案 0 :(得分:1)

将此添加到text3的定义中:

android:layout_alignBottom="@id/text2"

对于text2的所有可能文本长度的一般解决方案在XML中是不可能的,因为布局需要知道最后一行text2的末尾的右边缘考虑换行,但只有正确的整个text2的边缘可用TextView。