【问题标题】:hdpi assets no longer loadinghdpi 资产不再加载
【发布时间】:2011-03-23 16:43:59
【问题描述】:

我正在为我的游戏升级图形,以便在更高密度的设备上更好地显示。我创建了更高 dpi 的艺术品,将其添加到正确的位置(res/layout/drawable-hdpi)。我在清单中添加了以下内容:

 <supports-screens 
      android:smallScreens="false"
      android:normalScreens="true"
      android:largeScreens="true"
      android:anyDensity="true" />

它工作得很好......除了一张我忘记升级并从 drawable-mdpi 中提取的图像。我放大了该图像,将其放入 drawable-hdpi 并重新启动。现在游戏只从 mdpi 中提取图像。

我可以用 git 验证我对代码库所做的唯一更改是添加新的图像文件。出于故障排除的目的,我尝试删除添加的图像并将我的 git repo 重置为它工作时的状态。在这两种情况下,它仍然只是总是从 mdpi 加载。这让我相信这可能是模拟器的问题。我正在我的汽车上的上网本上开发这个,这有时会给我带来模拟器问题(通常需要一个小时左右才能启动并且在 Atom 上运行非常非常缓慢)。

有人知道什么可能会阻止游戏从 hdpi 中提取吗?

编辑

经过大量故障排除后,我仍然无法解决这个问题。看来我的应用程序可能在兼容模式下运行。它不是显示“邮票”大小,而是使用整个wvga800屏幕;但 getDisplayMetrics().density 返回 1.0。模拟器状态它设置为高(240)dpi,所以我假设密度应该> 1.0。

随机数据点:将 drawable-hdpi 目录更改为 drawable-large 会导致加载较大的图像。在那种情况下 getDisplayMetrics().density 仍然是 1.0,所以我无法进行正确的 px->dp 转换。

【问题讨论】:

    标签: android scaling dpi


    【解决方案1】:

    res/layout/drawable-hdpi 位置不正确。 res/drawable-hdpi 是正确的位置。

    【讨论】:

      【解决方案2】:

      在这里查看我的问题

      Android Eclipse emulator problem: Runs WVGA(hdpi) as a mdpi screen

      我修复它的方法是删除 AVD 并创建一个新的。我仍在努力寻找问题的具体答案。到目前为止,您所能做的就是重新启动计算机和/或制作新的 AVD。

      【讨论】:

      • 感谢您的信息。我不确定我的问题是否相关,因为似乎我的 avds 正在以适当的密度运行主屏幕。我将进行一些调查并创建一些新的 avds/reboot。如果事情似乎与您的问题有关,我会通知您。
      • 只是更新,删除/重新创建 AVD 并没有帮助。认为我的问题有所不同。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多