在使用BitmapFactory加載圖片時往果,常會出現(xiàn)這種情況凑兰,返回的圖片尺寸與實(shí)際尺寸不符。這是由于我們把圖片資源放到res/drawable文件路徑下時匪蟀,選擇的文件不同所致湃窍,不同的文件夾會有不同的縮放扼菠。
電腦上圖片尺寸,單位是像素坝咐。Android手機(jī)的屏幕分ldpi循榆、mdpi、hdpi墨坚,甚至還有xhdpi秧饮,對于mdpi(density=160)設(shè)備,1dp=1px泽篮,對于hdpi(density=240)的設(shè)備盗尸,1dp=1.5px。所以帽撑,把圖片放在了res/drawable-mdpi目錄下泼各,而運(yùn)行的Android設(shè)備屏幕屬于hdpi,導(dǎo)致圖片尺寸會擴(kuò)大1.5倍亏拉。
解決方法:
BitmapFactory.Options bfoOptions = new BitmapFactory.Options();
bfoOptions.inScaled = false;
Bitmap img1 = BitmapFactory.decodeResource(getResources(), R.drawable.img, bfoOptions);