2

我正在为所有可用的屏幕分辨率开发一个应用程序。我的方法是创建不同的drawable文件夹并将各自的图像保存在其中。在我发现两种不同分辨率的设备之间发生冲突之前,一切都很顺利。设备480*800600*1024分辨率。但根据他们的像素密度,他们正在访问同一个drawable文件夹drawable-hdpi(这也符合下图中给定的规范)。

我的问题是此文件夹中的图像非常适合一种设备,而不适合其他设备。这意味着如果我保留图像600*1024,它们会在其他设备中重叠480*800等等。我尝试将文件夹重命名为其他可能的名称,但未能成功。请帮助我如何处理这种情况。希望我已经清楚地描述了我的情况......

4

5 回答 5

1

嗨,您可以将所有图像放在可绘制文件夹中,然后创建这样的布局文件夹

布局-小

大版面

布局-xlarge

这样您就可以从同一个可绘制文件夹中访问所有图像,并且在您运行应用程序时,它会根据它们的大小在 bin 中自动创建可绘制文件夹,这样就不会发生冲突和重叠。所以检查这种方式......

于 2013-03-06T05:03:08.870 回答
0

放置drawable文件夹并将图像保留为您想要的大小(让它为 30px*20px),并将其添加到您的布局中。

于 2013-03-06T05:08:02.817 回答
0

除了@androidgeek 的回答来满足您的特定需求之外,您还可以创建此布局文件夹

res/layout-sw600dp

在此布局中,您可以为 600*1024 设备分辨率创建布局,并且您可以为此布局使用单独的可绘制对象。

您也可以尝试仅获取 xhdpi 图像并在运行时从您的代码调整其大小,这当然不是建议的方法,但在大多数情况下都是有效的

于 2013-03-06T05:13:18.860 回答
0

这里有很多错误信息。分辨率本身并不能决定像素密度。480 x 800 像素的屏幕可以是ldpi, mdpi, hdpi, xhdpi, 或xxhdpi. 您无法仅通过分辨率来确定屏幕属于哪个密度桶。,ldpimdpi限定符告诉您每英寸像素的密度(大致 - 它们不准确,但接近)。一个hdpi屏幕在 1 英寸的屏幕上有大约 240 个像素,一个mdpi屏幕大约有 160 个像素,等等。

不能使用密度来确定分辨率。时期。

如果您正在尝试制作适用于非常特定分辨率的应用程序,我建议您改为为 iOS 开发。

于 2013-03-06T05:37:04.260 回答
-1

不同的设备从不同的文件夹中获取图像,这是 android 设备中的一个缺陷,即使它是一个选项卡,它也没有必要从 drawable-xlarge 获取图像。为此,我建议您为不同的设备制作不同的文件夹。如果您正在制作将在所有设备上完美运行的应用程序。尝试

可绘制的 ldpi

可绘制的 mdpi

可绘制的 hdpi

可绘制的 xhdpi

可绘制-sw600

可绘制的大型 hdpi

最重要的文件夹几乎涵盖了所有设备。您不需要在不同设备的每个文件夹中插入不同的图像,因为如果 hdpi 文件夹中有图像,则 mdpi 和 ldpi 会自动缩放这些图像,在某些情况下,图像可能不适合您必须插入的情况图像根据其大小。

于 2013-03-06T05:28:11.857 回答