Android 根据屏幕大小使用不同的可绘制文件夹?

Android 根据屏幕大小使用不同的可绘制文件夹?,android,eclipse,directory,drawable,Android,Eclipse,Directory,Drawable,我想添加平板电脑图形,但android(我使用eclipse)没有在正确的可绘制文件夹中查找。我制作了新的文件夹(in/res)可绘制的大ldpi(每种密度)和可绘制的xlarge ldpi(每种密度),但当我在平板电脑上运行应用程序时,它仍然从中等大小的可绘制文件夹(可绘制的ldpi)中获取图像。我认为添加drawable large和drawable xlarge会使android在屏幕大小的正确文件夹中,但看起来不是这样 我做错了什么?我是否需要实现一些东西,或者在某个地方声明新的可绘制文

我想添加平板电脑图形,但android(我使用eclipse)没有在正确的可绘制文件夹中查找。我制作了新的文件夹(in/res)可绘制的大ldpi(每种密度)和可绘制的xlarge ldpi(每种密度),但当我在平板电脑上运行应用程序时,它仍然从中等大小的可绘制文件夹(可绘制的ldpi)中获取图像。我认为添加drawable large和drawable xlarge会使android在屏幕大小的正确文件夹中,但看起来不是这样


我做错了什么?我是否需要实现一些东西,或者在某个地方声明新的可绘制文件夹。

我认为您在文件夹名称中混合了大小和分辨率。您应该只使用两者中的一种,而不是两种(
drawable-large
而不是
drawable-large-hdpi
)。查找正确的文件夹名称。

SimonSays是正确的。对于drawable,您不需要为large、xlarge等添加后缀。您应该只为设备密度添加后缀,如ldpi、hdpi、xhdpi等。因此,请删除所有带有drawable large-*和drawable xlarge-*文件夹的文件夹,只保留drawable ldpi,您支持的每个屏幕密度的可绘制hdpi等。

仅同时具有
xlarge
ldpi
屏幕

不仅如此,当可绘制图像是占据整个屏幕宽度或高度的位图图像时(例如,当使用位图图像作为整个屏幕的背景图像时),您应该仅在可绘制图像上使用大小限定符


对于大多数可绘图文件夹(除了我刚才提到的例外情况),您应该去掉尺寸限定符,只保留密度限定符。

我仍然不知道我应该如何命名可绘图文件夹。我可以设置应用程序在哪个可绘图文件夹中查找,还是仅限于这五个文件夹?您无法设置设备将在哪个可绘图文件夹中查找。它将自动查找最合适的文件夹。@Java,如果您愿意,您可以将所有可绘图内容放在一个可绘图文件夹中。Android足够聪明,可以查看所有这些文件夹,如果没有找到与它所需的密度/大小完全匹配的,它将递归到最接近的最大密度匹配,并为您进行适当的缩放计算。不,系统不会将自己限制在这五个文件夹内。例如,系统具有国家和语言的限定符,因此,如果我有一个drawable-fr_rUS/文件夹,那么如果设备设置为美国和法语,我会告诉系统选择该文件夹。该系统的美妙之处在于,一旦我开始编写java代码,我不需要为每一个国家或每一种语言添加条件(就像我不需要为设备的特定密度或大小修改java代码一样)。我只是参考了我的drawable,根据我的应用程序安装在哪个设备上,drawable将是它所在的特定设备的正确版本(如果所需的特定文件夹为空或不存在,它将级联到对它所在的设备最有意义的drawable文件夹)。当然,您可以始终将位图放入资源/文件夹中,然后从那里使用它们。如果您将位图放在资产/文件夹中,Android将按原样使用它们,而不会对其进行任何调整。换句话说,这些位图将不再被认为是可绘制的,并且不会对其显示的屏幕类型进行补偿(除非您决定手动编写自己的包装器类,以考虑所有这些不同的设备变化).您使用的是哪款平板电脑?如果我这样做,则显示的图形会非常小。如果我缩放图形,它们会变得非常模糊。但最终我得到的图像要么太小,要么太模糊。没有限定符的默认可绘制/文件夹是mdpi。相反,您应该创建一个可绘制的xxhdpi/文件夹,删除以前的可绘制/文件夹,并为其提供一个xxhdpi映像(xxhdpi映像的大小大约是mdpi的3倍)。即使你的平板电脑只有xhdpi或hdpi,你也应该提供最高分辨率的xxhdpi位图并给它贴上标签,这样系统就可以根据自身密度的需要缩小尺寸。但即使这不是完美的,图像也不会再模糊,但如果有一条线只有一个像素厚,它可能会随着缩小而消失。因此,如果你想让你的工作完全没有错误,你仍然应该尝试手动缩小尺寸,并使用这五个文件夹。我只是建议您只使用一个带有xxhdpi的可绘制文件夹作为快捷方式,以防结果不需要完美。无论如何,这里有一张备忘单,我用它来帮助我记住不同安卓密度之间的近似比率。