Android 加载的位图不';t按容器大小缩放
我有一个ListView项目,它使用一个Drawable作为默认图标,如果指定了图标,我允许覆盖。当我加载指定图标的位图并将其设置为保存默认可绘制项的ImageView时,指定图标的大小要小得多 可绘制图标和指定图标都是128px 128px,因此我“假设”它们在加载时的大小相同 这是问题的截图 以下是ListItem的XML:Android 加载的位图不';t按容器大小缩放,android,android-layout,bitmap,imageview,size,Android,Android Layout,Bitmap,Imageview,Size,我有一个ListView项目,它使用一个Drawable作为默认图标,如果指定了图标,我允许覆盖。当我加载指定图标的位图并将其设置为保存默认可绘制项的ImageView时,指定图标的大小要小得多 可绘制图标和指定图标都是128px 128px,因此我“假设”它们在加载时的大小相同 这是问题的截图 以下是ListItem的XML: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" and
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="6dip" >
<ImageView
android:id="@+id/events1_lv1_listitem_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="6dip"
android:contentDescription="@string/content_description_default_text"
android:src="@drawable/calendar" />
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/events1_lv1_listitem_headline"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:contentDescription="@string/content_description_default_text"
android:gravity="center_vertical"
android:textSize="16sp" />
<TextView
android:id="@+id/events1_lv1_listitem_summary"
android:layout_width="fill_parent"
android:layout_height="26dip"
android:contentDescription="@string/content_description_default_text"
android:ellipsize="marquee"
android:singleLine="true"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
任何帮助都将不胜感激 无法看到您的屏幕截图 如果图标为128px*128px,则可以将
layout\u宽度
和layout\u高度
设置为128px,然后将scaleType
设置为fitXY
或centerCrop
。像这样:
<ImageView
android:id="@+id/events1_lv1_listitem_icon"
android:layout_width="128px"
android:layout_height="128px"
android:scaleType="fitXY"
android:layout_marginRight="6dip"
android:contentDescription="@string/content_description_default_text"
android:src="@drawable/calendar" />
至于
scaleType
的含义,您可以看到。避免包装内容。将图像大小设置为dp,并将scaleType设置为“fitXY”以下内容将适用于您*
<ImageView
android:id="@+id/events1_lv1_listitem_icon"
android:layout_width="128dp"
android:layout_height="128dp"
android:scaleType="fitXY"
android:layout_marginRight="6dp"
android:contentDescription="@string/content_description_default_text"
android:src="@drawable/calendar" />
<ImageView
android:id="@+id/events1_lv1_listitem_icon"
android:layout_width="128dp"
android:layout_height="128dp"
android:scaleType="fitXY"
android:layout_marginRight="6dp"
android:contentDescription="@string/content_description_default_text"
android:src="@drawable/calendar" />