您的位置:首页 > 移动开发 > Android开发

Android 不同屏幕Bitmap显示图像的缩放问题

2012-11-22 10:13 429 查看
在使用Bitmap进行位图读取和显示的时候需要注意在生成位图时,系统会根据不同的情况来缩小、放大图像。

当把图片放到drawable文件夹中时,160密度的模拟器显示的图像有放大效果,240密度的模拟器显示原尺寸的图像。

当把图片放到drawable-hdpi文件夹中时,160密度的模拟器显示出的图像有缩小效果,240密度的模拟器显示原尺寸的图像。

当把图片放到drawable-mdpi文件夹中时,160密度的模拟器显示原尺寸的图像,240密度的模拟器显示放大的图像。

当把图片放到drawable-ldpi文件夹中时,160、240密度的模拟器都显示放大的图片。

由此可以看出,在使用Bitmap显示图像时,一般应放在drawable-hdpi文件夹中,这样可以根据屏幕的密度来调整图像大小,比如再做游戏时,大屏幕的与小屏幕的手机中,人物或物体应该有大小之分。

如果想无论什么密度都显示出原尺寸的图像,则需要有如下几行代码进行设置:

// Bitmap的配置参数

BitmapFactory.Options opts
=
new BitmapFactory.Options();

opts.inDensity
= getResources().getDisplayMetrics().densityDpi;

opts.inTargetDensity
= getResources().getDisplayMetrics().densityDpi;

// 以指定的参数创建Bitmap

Bitmap girl = BitmapFactory.decodeResource(getResources(), R.drawable.girl,
opts);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐