我有一个包含自定义行的列表视图。在imageView1中我设置了一个图像,但它小于行的高度。图像大小为4x30px。当我设置40x300 img大小(以编程方式)时,行变得太大(我知道原因:wrap_content)。如何设置图像的高度拉伸到行的高度?
holder.image.setImageDrawable(convertView.getResources().getDrawable(R.drawable.priority_4x30));
xml.file:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon"
android:focusable="false" />
<TextView android:id="@+id/textView1"
android:layout_width="180dip"
android:layout_height="wrap_content"
android:paddingTop="15dip"
android:paddingBottom="15dip"
android:textColor="#000000"
android:layout_toRightOf="@+id/imageView1">
</TextView>
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon"
android:layout_toRightOf="@+id/textView1" />
<CheckBox android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="6sp"
android:focusable="false"
android:layout_toRightOf="@+id/imageView2">
</CheckBox>
</RelativeLayout>
答案 0 :(得分:6)
你应该让每个项目的relativelayout都有一个静态高度
前:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight">
然后你可以简单地改变你的imageview来填充父级的高度
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/icon"
android:layout_toRightOf="@+id/textView1" />