我正在开发基于 SurfaceView 类的安卓游戏。目前,我一直在尝试针对不同的屏幕尺寸优化视图。
问题 1:我的 res 文件夹中有 PNG 文件,我使用 Canvas.drawBitmap 绘制它们。阅读本文(http://developer.android.com/guide/practices/screens_support.html)后,我认为如果屏幕更大,android 会调整位图的大小。不幸的是,在平板电脑上启动我的应用程序与在手机上启动它时,我发现没有缩放(或任何变化)。那么它是如何完成的呢?我应该想出一些奇特的策略来计算可用空间并使用源矩形和目标矩形绘制我的位图吗?如果有人有最佳实践或一些提示如何在画布上绘制位图,那就太好了。我已经阅读了像素<->dip 转换主题,但我不得不说我不知道如何在我的应用程序中使用该“解决方案”。所以任何帮助表示赞赏......
问题 2:我的 res 文件夹中有 3 个 PNG。一个 ldpi、一个 mdpi 和一个 hdpi。Ldpi 图像有 50px*50px,mdpi 有 75px*75px,hdpi 有 100px*100px。当我在模拟器(800*480)中加载应用程序时,它使用 100*100 png。当我在 Acer Iconia Tab 上加载应用程序时,它使用 75*75 图像。我认为 hdpi 用于大屏幕(=tab),而 mdpi 或 ldpi 将用于模拟器屏幕。至少我认为android也会在标签上使用hdpi-image,但我很惊讶......对此的任何解释都非常感谢
抱歉 4 长文本,只是想清楚...
赛亚·埃夫迪