从文件创建独立于BitmapDrawable的设备密度

时间:2011-08-23 03:06:20

标签: android bitmap drawable scaling

我从文件中获取一个位图(从网络缓存)并且没有对设备密度进行硬编码,我无法以正确的大小绘制它。

我正在将图像用作菜单图标,因此就我所知,我无法设置比例类型。

我已经尝试了这个并且无处可去:

BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inScaled = true; //tried false too
opt.inDensity = 240;
opt.inTargetDensity = 240; //both tried at various settings
Bitmap bitmap = BitmapFactory.decodeFile(imageFile.toString(), opt);
BitmapDrawable icon = new BitmapDrawable(bitmap);

我有更多运气:

icon.setTargetDensity((int) (100 * metrics.density)); //Also tried at various settings

但除非我对实际设备DPI进行硬编码,否则我无法获得良好的效果。

0 个答案:

没有答案