我的listview有问题,其中包含ImageView和每个项目的一些TextView。
或多或少,有两行TextView和一行ImageView(XX)应该采用两行:
|XX| TextView 1 TextView 2
|XX| TextView 3 TextView 4
我的问题是我在ImageView中更改图像。我的目标是使imageview的高度与两个textview的高度相同。但是我的图像是400x300,图像视图被扩展为包含它。我试图用getHeight或getMeasuredHeight来获取imageView的高度,然后在将它放入imageView之前调整位图大小,它不起作用。
我对listview的布局是:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/list_poi_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:scaleType="centerCrop"
android:contentDescription="@string/points_of_interest_activity_image_content_description" />
<TextView
style="@style/CarloText"
android:id="@+id/list_poi_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/list_poi_image"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
style="@style/CarloText"
android:id="@+id/list_poi_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/list_poi_name"
android:layout_below="@+id/list_poi_name"
android:textAppearance="?android:attr/textAppearanceMedium" />
...
谢谢你的帮助!!!
答案 0 :(得分:3)
为imageview设置一些固定高度,并设置imageView FIT_XY或CENTER_INSIDE的缩放类型。无论纵横比如何,FIT_XY都会将图像缩放到所需的宽度和高度,因此图像可以拉伸,CENTER_INSIDE将在给定尺寸下缩放图像,保持图像的纵横比,因此图像可能看起来比可用空间更小。
答案 1 :(得分:0)
您可以在代码中设置LayoutParams
的{{1}},使其高度等于ImageView
+ TextView1
。