android - SDK中如何判断实际使用了哪个资源文件?

标签 android sdk resources drawable dpi

我直接在与计算机相连的手机上运行 SDK 中的应用程序。有什么方法可以确定(使用 SDK 工具)哪个 dpi 可绘制对象文件夹实际用于在应用程序中显示特定的 png 文件?

编辑: 说清楚。我想出了如何使用其他方法获取此信息: 1.将不同的文件放在不同的dpi文件夹下同名 2. 编写 w 短代码以编程方式检查它 现在真正的问题是:我可以直接在 SDK(DDMS 或 Hierarchy Viewer)中获取这些信息吗?

最佳答案

您无法找到正在使用的可绘制文件夹,但您可以找到使用了哪个密度。

DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);

然后您可以使用 metrics.densityDpi 来查找使用了哪个 DPI。它将是 DENSITY_DEFAULT、DENSITY_HIGH、DENSITY_LOW、DENSITY_MEDIUM 等。您可以比较并找出。

如果是 DENSITY_HIGH - 可绘制的 hdpi DENSITY_LOW = drawable-ldpi DENSITY_MEDIUM - drawable-mdpi

参见此处获取文档 http://developer.android.com/reference/android/util/DisplayMetrics.html

关于android - SDK中如何判断实际使用了哪个资源文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9700191/

相关文章:

java - 无法在 Retrofit 2 中获取 json 对象和数组

eclipse - 使用 eclipse 为移动设备编程已经死了吗?

Android:如何在状态栏中获取电池图标资源 ID 或完整文件路径/名称?

node.js - 具有带有 node.js 集群模块的全局对象

Android R.java 在数字(媒体)文件名上给出错误

android - 在发布版本上 react native AAPT错误

maven - 在 Windows 10 中打开 Windows SDK 命令提示符

class - 在maven组装之前替换类文件

android - 您可以将 Apple 的 mapkit 用于混合应用程序吗?

iphone - 带drawAtPoint的多行文本(自动换行)?