4

我将 aImageView和 aTextView放在RelativeLayout用作列表项的 a 中,并希望ImageView随 . 的行号垂直增长TextView。的drawable是竖条ImageViewpng图片。

使用以下布局,认为它在 Eclipse 的 Layout 视图中看起来不错,ImageView但不会填充RelativeView运行时的高度。相反,它始终保持原始图片的高度。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent" >
   <ImageView android:id="@+id/iv"
       android:layout_width="wrap_content"
       android:layout_height="fill_parent"
       android:layout_alignParentLeft="true"
       android:src="@drawable/vbar"
       android:adjustViewBounds="false"
       android:scaleType="fitXY"/>
   <TextView
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:singleLine="false"
       android:layout_toRightOf="@id/iv"
       android:layout_alignParentBottom="true" />
</RelativeLayout>

为什么它不像我预期的那样工作(或如 Eclipse 布局视图中所示)

4

2 回答 2

1

我对您的代码进行了一些更改。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:singleLine="false"
        android:text="@string/text" />

    <ImageView
        android:id="@+id/iv"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_above="@id/tv"
        android:adjustViewBounds="false"
        android:scaleType="fitXY" />

</RelativeLayout>

现在它给出了正确的输出。我所做的是,首先声明 textview 并将其与父底部对齐。然后声明 imageview 并将其放在 textview 的顶部。所以 imageview 将在 textview 上方开始并占据所有剩余的高度。我也测试了多行文本视图。希望能帮助到你。

于 2013-01-08T11:59:17.807 回答
-1

我会做几件事:

  1. 通过将 TextView 与“drawableLeft”组合来简化布局。
  2. 使图像成为 9-patch 图像,使其相应增长。
于 2012-04-30T15:44:11.390 回答