1
我有一个应用程序小部件,并且在其中我想在右下角显示我应用程序图标的缩小版。图像的尺寸为36x36,图像在这些尺寸上看起来很好,但我希望图像较小,大约为18x18。但是,如果我在图像编辑器中调整图像大小或尝试在代码中缩放图像,图像会显得失真。调整大小/缩放图像会导致失真
这是正常的图像看起来什么:
这是缩放图像:
这是ImageView
代码我使用:
<ImageView
android:id="@+id/widgetIcon"
android:src="@drawable/icon"
android:layout_width="18dp"
android:layout_height="18dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:scaleType="centerCrop"
/>
UPDATE:
其实我有不同的绘制文件夹中的形象,打破了这样的:
绘制-LDPI:36X36
绘制-MDPI:48×48
绘制,华电国际:最高72x72
绘制-xdpi:96×96
我把该装置屏幕截图是Galaxy Nexus。
更新2:
这里是整个布局,该ImageView
是,如果有差别。该小部件的底部有RelativeLayout
,其中包含ImageView
。
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widgetLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="@dimen/widget_margin">
<RelativeLayout
android:id="@+id/widgetBgLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:paddingTop="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:background="@drawable/bg_widget"
>
<RelativeLayout
android:id="@+id/widgetStatusLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:paddingTop="10dp"
>
<TextView
android:id="@+id/widgetStatus"
style="@style/WidgetStatus"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
/>
<ImageView
android:id="@+id/widgetIcon"
android:src="@drawable/icon"
android:layout_width="18dp"
android:layout_height="18dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:scaleType="centerInside"
android:adjustViewBounds="true"
/>
</RelativeLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_above="@id/widgetStatusLayout"
android:layout_alignParentTop="true"
>
<TextView
android:id="@+id/widgetTitle"
style="@style/WidgetTitle"
/>
<TextView
android:id="@+id/widgetText"
style="@style/WidgetText"
/>
</LinearLayout>
</RelativeLayout>
</FrameLayout>
UPDATE 3
问题不与所述图像的缩放,这是图像上方的布局重叠。不知道解决方案。
其实,我在我的OP中错过了。我确实有不同的可绘制文件夹中的图像,每个文件夹都有不同的尺寸。我会更新我的OP,因为格式更好。但是,我尝试使用'fitCenter',但得到了相同的结果。 – 2012-07-12 01:51:32
嗯...你有没有尝试过'centerInside' for your scaleType? – BlackHatSamurai 2012-07-12 01:57:33
试过了,'centerInside'没有运气。我再次更新了我的OP,以显示“ImageView”所在的整个布局,如果有帮助的话。 – 2012-07-12 02:25:36