我在res / drawable中放了一些位图。
在我通过BitmapFactory.decodeResource()加载位图后,我发现它们会根据密度自动调整大小。
这不是我想要的。 我希望它们保持原始尺寸(像素大小)。
我该怎么办?
答案 0 :(得分:18)
正如在另一个问题中所说,使用drawable-nodpi文件夹会阻止android调整图片大小。
此外,如果您希望为hdpi和ldpi格式提供多个版本的图像,但不希望系统调整它们的大小(例如,为了保持两个分辨率的强大功能),则可以使用以下代码加载你的bitmpap:
// ask the bitmap factory not to scale the loaded bitmaps
BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inScaled = false;
// load the bitmap
Bitmap bitmap = BitmapFactory.decodeResource(ctx.getResources(), R.id.mybmp, opts);
答案 1 :(得分:5)
http://developer.android.com/guide/practices/screens_support.html
如果使用nodpi后缀,系统将不会自动缩放图片。希望它有所帮助!
答案 2 :(得分:1)
如果您在hdpi,ldpi和mdpi中保留了单独的图像,并且您正在使用资源来访问这些图像,那么您无法做太多。
如果您只想使用一个图像,请在mdpi文件夹中保留一个图像,然后删除其他图像。
答案 3 :(得分:-1)
将图像放在名为“drawable”的文件夹中(不包含ldpi,mdpi,hdpi等。后缀)。您可能需要自己创建它(例如Eclipse,不会自动创建它)。
之后,从其他drawable-something文件夹中删除drawable资源。