1

我正在开发应该支持 2.1 到最新 Android OS (4.2) 版本的 Android 应用程序。目前我的图片库模块中显示的图片很少。我需要在所有支持从 2.1 到 4.2(最新)的操作系统的设备(智能手机和平板电脑)上支持我的应用程序。

每张图片的大小大致为 368X387,每张 50 KB,PNG 类型

我的工作区 res 包含以下可绘制文件夹:

drawable-hdpi
drawable-ldpi
drawable-mdpi
drawable-xdpi

我有些困惑

  1. 我应该将图像存储在哪个文件夹中,这有什么关系?

  2. 我是否需要为不同类型的设备提供不同分辨率的图像?

谢谢。

4

5 回答 5

12

您只能将图像存储在 1 个文件夹中,例如,您的设备是 mdpi .. 它在他身上会很好看,但是如果您在 ldpi 上运行您的应用程序,android 会自动缩放您的图像,并且看起来很难看(低质量) . 所以,是的,您需要针对不同类型的设备使用不同分辨率的图像。所以 mdpi 分辨率图像转到 drawable-mdpi 所以 hdpi 分辨率图像转到 drawable-hdpi 等。

这是我在互联网上找到的一些关于屏幕尺寸的列表,也许你会发现它有帮助:

Low density Small screens QVGA 240x320 (120dpi):

layout-small-ldpi (240x320)  
layout-small-land-ldpi (320x240)

Low density Normal screens WVGA400 240x400 (x432) (120dpi):

layout-ldpi  (240 x 400 )
layout-land-ldpi  (400 x 240 )

Medium density Normal screens HVGA 320x480 (160dpi):

layout-mdpi (320 x 480 )
layout-land-mdpi (480 x 320 )

Medium density Large screens HVGA 320x480 (160dpi):

layout-large-mdpi (320 x 480 )
layout-large-land-mdpi (480 x 320)

Galaxy Tab ( 240 dpi ):

layout-large  (600 x 1024) 
layout-large-land  (1024 x 600)

High density Normal screens WVGA800 480x800 (x854) (240 dpi):

layout-hdpi (480 x 800)
layout-land-hdpi (800 x 480)

Xoom (medium density large but 1280x800 res) (160 dpi):

layout-xlarge (800 x 1280)
layout-xlarge-land (1280 x 800)

此外,最好阅读有关支持不同类型屏幕的官方文档站点。

于 2013-04-04T11:29:30.203 回答
2

资源文件夹中有四个文件夹 1-drawable-hdpi 2-drawable-ldpi 3-drawable-mdpi 4-drawable-xdpi

要声明您希望用于不同屏幕的不同布局和位图,您必须将这些替代资源放在单独的目录/文件夹中。这意味着如果您为 xhdpi 设备生成 200x200 的图像,您应该为 hdpi 生成 150x150、mdpi 为 100x100 和 ldpi 设备为 75x75 的相同资源。

然后,将文件放在适当的可绘制资源目录中:根据您的需要

于 2013-04-04T11:45:07.110 回答
1

如果您想为所有类型的屏幕使用相同的图像,那么您可以创建一个名为“drawable”的其他文件夹并将所有图像放在该文件夹中。它将作为默认可绘制对象工作。

但是,如果您想提高所有分辨率的图像质量。那么您需要所有 4 种类型的图像,然后将它们放在具有相同图像名称的各自文件夹中。您还可以为每个分辨率制作不同的 XML。

于 2013-04-04T11:53:18.920 回答
0

看到这个 http://developer.android.com/training/multiscreen/screendensities.html

您可以将特定图像放在所有文件夹中。

drawable-hdpi
             ---->img.png
drawable-ldpi
             ---->img.png
drawable-mdpi

             ---->img.png
drawable-xdpi

          ---->img.png

这完全取决于您的操作系统。它会根据设备分辨率默认采用。

于 2013-04-04T11:32:56.650 回答
0

在 android 中,我们的“Res”文件夹只不过是资源文件夹。在这个 res 文件夹中,我们还有其他子文件夹,但为了存储图像,我们有四种类型的文件夹名称被称为:drawable-hdpi 用于高密度屏幕,其分辨率为 480* 800
drawable-ldpi 适用于低密度屏幕,其分辨率为 240*320
drawable-mdpi 适用于中密度屏幕,其分辨率为 320*480
drawable-xdpi 适用于超密度屏幕,其分辨率为 640*960

如果您想为多个屏幕匹配图像,我的建议是使用

九个补丁图像而不是 .png 和 .bmp 用于创建九个补丁图像 http://developer.android.com/tools/help/draw9patch.html

于 2013-05-23T07:06:38.297 回答