我是 Android 新手,刚刚开始创建应用程序。我想为我的应用放置背景图片。我必须使用的图像的宽度和高度是多少,才能在所有设备上运行。
2 回答
这涉及到几个不同的概念。虽然两者都包含在相当长且神秘的Supporting Multiple Screens 文档中,但让我提一下。
您可能需要多次阅读该文档。
设备按像素密度和屏幕尺寸分组。像素密度是低 (ldpi)、中 (mdpi)、高 (hdpi) 和新的超高 (xhdpi) 之一。屏幕尺寸或小、正常、大和新的超大。此外,还有两个方向:纵向和横向。如果您查看实际与 Android Market 联系的内容,您可以忽略除 mdpi 和 hdpi 之外的所有内容,用于正常屏幕。
这些分组对应于项目的 res/ 目录树下的单独目录。在 res/drawable 中去你所有的通用图像。在 res/drawable-mdpi 和 res/drawable-hdpi 中,当你为基本类型覆盖它们时,你的图像就会出现。
此外,这些分组在“中密度”(大约 140 到 180 dpi)和“高密度”(大约 170 到 250 dpi)之间有重叠。作为参考,摩托罗拉 Droid X 具有 854 像素 x 480 像素的手机,采用 4.7 英寸(对角线)显示屏,密度为 217 dpi。
您通常以预缩放单位指定布局资源(图形的 dp,每英寸间隔 1/160 或文本中的 sp 等效值)。有关更多信息,请参阅此问题。
不同的测量是不必要的混乱。制作大约 640 x 480 的 mdpi 图像和大约 800 x 600 的 hdpi 图像,你应该是正确的。此外,不能保证纵横比,您可能需要使用 9-patch 工具来确保它正确拉伸。
如果您真的想查看设备分辨率,您可以询问 getWindowManager().getDefaultDisplay().getWidth()/.getHeight() 像素数。
快乐编码!
由于android没有任何特定的分辨率。我们需要不同的可绘制文件夹。最好参考这个链接