[英]Bitmap scaling to fit different screen size/density
我不太了解像素密度和设备无关像素的所有知识,我想知道是否应该为此担心。
更具体地说,这是我的应用程序现在的工作方式:
onSurfaceCreated()
给定的值(像素或dp?我不知道),我计算游戏中每个元素的大小和位置,然后加载Bitmap.createScaledBitmap()
(先使用BitmapFactory.decodeResource()
,然后再使用Bitmap.createScaledBitmap()
),然后使用drawBitmap()
将它们放在屏幕上 我在手机(480×800 hdpi)和模拟器(240×320 mdpi)上进行了测试,两者看起来都不错。
我的问题是:
res/drawable-hdpi
拥有所有内容) 我对此的了解有限,因为我从未开发过游戏。
这是正确的做法吗? 我不明白如何(为什么)可以使用某些设备为hdpi,而其他设备为mdpi的事实。
使用此信息,您可以自动加载不同的图像。 您可以找到目录:
drawable-hdpi drawables-mdpi ...
我应该为不同的屏幕密度提供不同的位图吗?为什么? (现在我已经将所有内容保存在res / drawable-hdpi中)
如果您全都使用hdpi,则我认为图像会缩小,由于缺少特定比例的图像,因此图像会缩小。 提供图像可以使您更好地控制最终产品,并减少处理时间。
.png应该有多大? 我可以将它们创建为比其预期大小大得多(2×),以确保它不会看起来模糊或混叠吗?
我认为它们可以恰好是所需的大小。 但是正如我上面说的..没有太多的经验。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.