gpt4 book ai didi

java - Android:使用 setBackgroundDrawable 设置后位图变小

转载 作者:太空狗 更新时间:2023-10-29 12:45:57 24 4
gpt4 key购买 nike

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

下面是我创建新位图和 Canvas 的代码。然后它在 Canvas 上绘制位图并将新位图作为现有布局的背景。我必须使用此方法,因为稍后我要操作 Canvas 。

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);

关于java - Android:使用 setBackgroundDrawable 设置后位图变小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18292596/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com