列表视图行高不变

时间:2013-11-13 01:16:52

标签: android listview height row

我有以下布局,似乎每行的高度不同,具体取决于是否有一个图像被解析。布局定义如下。没有硬编码layout_height。我怎样才能确保所有的高度相同。我理解图像分辨率起作用。所以,它可能不可行。但是,我正在寻找一种解决问题的创造性方法。

第一张图片是我的默认avator(它是50x50 .png文件)。如果有一行的附加图像,它将为50x50 .jpeg。所以,不同的文件类型,因此不同的分辨率。

enter image description here

enter image description here

enter image description here

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/imgOwner"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="0.75"
        android:layout_marginRight="10dp"
        android:scaleType="centerInside"
        android:contentDescription="Image Owner"
        android:src="@drawable/icon_default_avator" />

    <TextView
        android:id="@+id/txtUserName"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="10"
        android:text="User Name"
        android:textSize="10sp" />
</LinearLayout>

<TextView
    android:id="@+id/txtVideoTitle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Video Title"
    android:layout_marginBottom="10dip"
    android:textSize="10sp" />

<TextView
    android:id="@+id/txtVideoName"
    android:layout_width="wrap_content"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textSize="10sp"
    android:text="Video Information"
    android:layout_marginBottom="10dip"
    />

1 个答案:

答案 0 :(得分:0)

试试这种方式

像这样设置imageview属性

<ImageView
        android:id="@+id/imgOwner"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_marginRight="10dp"
        android:adjustViewBounds="true"
        android:contentDescription="Image Owner"
        android:src="@drawable/ic_launcher" />