Java-Android:使用setBackgroundDrawable设置后,位图会变小

我有一个奇怪的问题,其中结合使用drawBitmap和setBackgroundDrawable使我的图像看起来比实际小2倍.

 

下面是我的代码,用于创建新的位图和画布.然后,它将位图绘制在画布上,并将新位图放置为现有布局的背景.我必须使用此方法,因为稍后将要处理画布.

 

Bitmap left = BitmapFactory.decodeResource(getResources(), resID);      
// Create a temporary bitmap
Bitmap tempBitmap = Bitmap.createBitmap(
        left.getWidth(),
        left.getHeight(),
        Bitmap.Config.ARGB_8888);           
Canvas tempCanvas = new Canvas(tempBitmap);         
//Draw bitmap on canvas
tempCanvas.drawBitmap(left, 0, 0, null);
background.setBackgroundDrawable(tempBitmap);

我尝试使用tempCanvas.scale(2,2);并确实将“像素”缩放回正常状态,但没有缩放矩形.

如果我使用background.setBackgroundResource(resID);背景图片以正确的大小显示,排除了我的MDPI / HDPI / XHDPI文件夹的任何问题.

使用setBackgroundDrawable()设置背景图像时,为什么它会以较小的比例显示?

最佳答案

我解决了问题

 

 

tempCanvas.setDensity(Bitmap.DENSITY_NONE);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值