RelativeLayout toLeftOf

时间:2012-11-13 12:55:08

标签: android android-layout relativelayout

我在LinearLayout中有一个RelativeLayout,用于显示一些数据:

<LinearLayout
    android:id="@+id/linearLayout4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginRight="3dp"
    android:layout_marginTop="3dp"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="3dp"
        android:ellipsize="end"
        android:maxLines="1"
        android:textSize="16dp"
        android:textStyle="bold" />

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/time"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center_vertical"
            android:singleLine="true" />

        <ImageView
            android:id="@+id/uhr"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:layout_gravity="left"
            android:layout_marginLeft="2dp"
            android:layout_toRightOf="@id/time"
            android:src="@drawable/event_clock" />
    </RelativeLayout>

    <TextView
        android:id="@+id/description"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="3dp"
        android:autoLink="web|email"
        android:textSize="14dp" />
</LinearLayout>

问题是我希望我的ImageView在左边,TextView在它旁边。 但是,如果我将android:layout_toRightOf="@id/time"更改为android:layout_toLeftOf="@id/time"它只显示TextView但ImageView消失了。

1 个答案:

答案 0 :(得分:5)

然后将layout_toRightOf放在TextView上:

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/time"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/uhr"
        android:gravity="center_vertical"
        android:singleLine="true" />

    <ImageView
        android:id="@+id/uhr"
        android:layout_width="20dp"
        android:layout_height="20dp"
        android:layout_gravity="left"
        android:layout_marginLeft="2dp"
        android:src="@drawable/event_clock" />
</RelativeLayout>