决议和密度

时间:2012-03-06 17:30:30

标签: android android-layout

我正在为Android开发,我的代码在nexus或任何3.7英寸设备上运行完美。 如果我在平板电脑(7或10.1英寸)上运行它,那么字体和按钮非常小,间距太大。

如果我在2.7 QVGA上运行它,那么按钮太大而且重叠。

我在整个布局中使用dp和sp,所以我很惊讶它没有根据不同的屏幕尺寸/密度进行调整。 这是否意味着我必须在3个布局文件夹(大,中,小)中使用相同的XML布局,并将我的drawable放在3个不同的密度文件夹中? 或者我在这里发生了什么事。是的,我阅读了“支持多个屏幕”文档,它只是让我失去了细节(但我确实遵循了使用dp和sp的提示)。我正在寻找更多的摘要/一般方法答案。

2 个答案:

答案 0 :(得分:0)

dp和sp根据屏幕密度进行调整。因此,具有500 dpi和4000 dpi但具有相同屏幕尺寸的屏幕看起来是相同的。

如果它们的屏幕尺寸不同,则无法满足您的需求。如果您想支持多种屏幕尺寸,则必须使用重量或百分比。

关键是dp =与设备无关的像素,它只根据密度调整,而不是根据屏幕尺寸进行调整。

答案 1 :(得分:0)

在大多数情况下,如果您不制作平板电脑应用,则不需要为不同的密度/大小制作多个XML布局。你所要做的就是用你说的DP和SP来定义尺寸。

但是必须在可绘制文件夹中提供不同的图像,以在屏幕尺寸/密度上显示其中一个或其他功能。

如果您将所有图像放在可绘制文件夹中(未指定hdi,ldi或mdi),Android将尝试调整图像,但并不总是正常工作。

希望它有所帮助。