2

图像文件是相同的。一旦它来自drawable和一个来自file system

这是代码。

         <ImageView
                android:scaleType="fitEnd"
                android:id="@+id/partner_logo"
                android:layout_width="51dp"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical"
                android:contentDescription="@string/parter_logo"
                />

我想动态设置合作伙伴标志,所以我从网络服务器加载 id 然后

设置为imageView.setImageBitmap(Bitmap bitmap);

使用 ImageResource 它看起来不错,正如我所期望的那样,但Bitmap万一它太小了。

这里有图片比较


徽标(黑色箭头点)通过 设置setBitmap。好像没有上档次

在此处输入图像描述

--

徽标(读取箭头点)是通过设置的setImageResource。它看起来就像我想要的那样。

在此处输入图像描述

所以问题是为什么这里有区别?在位scaleType图的情况下工作吗?

4

1 回答 1

3

因为setImageResource()自动缩放您的图像。

如果你想使用setImageBitmap()你需要将你的位图放大到你想要的大小或使用setAdjustViewBounds(true)它来保持你的纵横比。

Bitmap.createScaledBitmap(yourbitmap, width, height, false);

http://developer.android.com/reference/android/graphics/Bitmap.html

于 2013-03-04T15:17:36.847 回答