我正在构建一个包含两个图像视图和一个textview的列表视图。但我看不出正确的样子。图标变得太小或太大,或者行周围有很多空白空间。如果我将imageview的scaletype更改为center,则图标会变得太小而周围有很多空间。当我将scaletype更改为fitcenter时,图标变得太大。在任何一种情况下,它看起来很丑。我更改了imageview的布局高度以匹配父级,额外的空间消失但图标变得太小。我正在使用64x64像素的png图像和nexus 7模拟器。我正在粘贴下面的xml文件 -
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#F6F6F6"
android:orientation="horizontal"
android:weightSum="10" >
<ImageView
android:id="@+id/imgIcon"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:layout_gravity="center"
android:layout_marginBottom="5dp"
android:layout_marginRight="15dp"
android:layout_marginTop="5dp"
android:layout_weight="3"
android:adjustViewBounds="true"
android:gravity="center_vertical"
android:scaleType="fitCenter" />
<TextView
android:id="@+id/txtTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight="6"
android:gravity="center_vertical"
android:textColor="#000000"
android:textSize="18sp"
android:textStyle="bold" />
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:src="@drawable/arrow_right" />
</LinearLayout>
我很困惑。请帮忙。提前谢谢。
我使用了128x128大小的图标,即使没有帮助。
答案 0 :(得分:0)
您需要设置android:minHeight
,将其设置为您希望保留每个列表视图项的大小,以便图像正确显示在您的情况下64
像素高度
这是代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:minHeight="64dp"
android:background="#F6F6F6"
android:orientation="horizontal"
android:weightSum="10" >
希望有所帮助
答案 1 :(得分:0)
对于imageview提供这两个属性, android:minHeight和android:scaleType
示例:
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:src="@drawable/arrow_right"
android:minHeight="@dimen/minHeight"
android:scaleType="centerCrop" />
使用此scaletype属性,图像会自动调整到所需的高度而不会出现任何失真。