将2个TextView的顶部和底部对齐到RelativeLayout中的ImageView

时间:2015-08-07 07:34:04

标签: android-layout

我想实现以下布局:

enter image description here

为此,我使用RelativeLayout并相应地设置属性:

<RelativeLayout>
    <ImageView android:id="@id/icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="@dimen/margin_top_bottom"
        android:layout_marginBottom="@dimen/margin_top_bottom"
        android:layout_marginLeft="@dimen/margin_left_right"
        android:layout_alignParentLeft="true"
    />

    <TextView android:id="@id/label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/icon"
        android:layout_alignTop="@id/icon"
    />

    <TextView android:id="@id/value"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/label"
        android:layout_alignLeft="@id/label"
        android:layout_alignBottom="@id/icon"
    />
</RelativeLayout>

但这就是我得到的:

enter image description here

标签与图标顶部完美对齐。 该值也低于标签并与标签左侧对齐,但不会与图标的底部对齐。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

从这个TextView:

<TextView android:id="@id/value"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/label"
    android:layout_alignLeft="@id/label"
    android:layout_alignBottom="@id/icon"
/>

删除android:layout_below="@id/label",否则它将被置于第一个。

所以只需将其更改为

即可
<TextView android:id="@id/value"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@id/label"
    android:layout_alignBottom="@id/icon"
/>