我更新了我的构建以针对Android 1.6构建,现在我的位图在高密度屏幕上缩小。我不想要这种行为。我试了一下:
http://blog.tomgibara.com/post/190539066/android-unscaled-bitmaps
但是图像仍然是缩放比例,除非我将它们设置为特定的高度&宽度。如果我使用wrap_content
,则缩小它们。
我有一个使用未缩放的位图加载器的图像加载器来创建一个drawable,如下所示:
Bitmap bm = UnscaledBitmapLoader.loadFromResource(imageBufferInputStream);
drawable = new BitmapDrawable(bm);
我稍后将其分配给ImageView:
imageView.setImageDrawable( copyBitmapDrawable( (BitmapDrawable) drawable) );
答案 0 :(得分:3)
为了在从资源加载图像时没有缩放图像(例如使用BitmapFactory.decodeResource),您必须在res / drawable-nodpi中找到它,而不是通常的drawable,drawable-ldpi等等。
答案 1 :(得分:2)
使用
new BitmapDrawable(this.getResources(), bmp);
而不是
new BitmapDrawable(bmp);
应该解决问题。
答案 2 :(得分:1)
使用Drawable
包装位图是个问题。 Drawable
缩放Bitmap
。不使用Drawable
,而是使用Bitmap
直接将ImageView
分配给imageView.setImageBitmap(Bitmap)
。
答案 3 :(得分:0)
使用ImageView.ScaleType。 CENTER
常量不会缩放,所以我想这就是你要找的东西。
顺便问一下,你使用像素或蘸料作为尺寸单位吗?使用凹陷(与密度无关的像素)是一种标准化多种分辨率显示的方法。您会找到一些提示here。