0

在我的应用程序中,我有活动背景。这是一张图片,我将使用 fitXY 作为它。我可以调整它的大小(保持纵横比不是很重要),但不是很多。我将准备几张不同尺寸的图像,用于纵向和横向。我将覆盖大约 90% 的设备。我的问题如下:

  1. 我需要什么尺寸的图片作为背景?
  2. 我应该将这些图像放在“res”下的哪些文件夹?

我想获得非常具体的文件大小和文件夹名称来放置这些文件。该解决方案也应该适用于平板电脑。

4

3 回答 3

3

我只使用了两张最大尺寸的图像(一张肖像和一张风景)。然后android将大小调整为更小,对我来说看起来相当不错。

  1. 我有一个分辨率的背景:可绘制文件夹中的800*1200像素
  2. 另一个分辨率为:1200*800 px in drawable-land文件夹

这在平板电脑上效果很好。

于 2012-10-09T08:07:10.697 回答
2

您必须为您的应用程序创建多个资源。Android 有 4 种分辨率(ldpi、mdpi、hdpi 和 xhdpi)和 4 种通用屏幕尺寸(小、中、大和特大)。因此,您必须制作 4 种布局(如果您不打算支持平板电脑,则需要 3 种布局,因为平板电脑属于超大类别)以支持屏幕尺寸。

这是一个一般指南:

将小、中、大和特大的布局放在 res/ 文件夹中,如下所示:

res/layout/sample_layout.xml             // default layout
res/layout-small/sample_layout.xml       // layout for small screen size
res/layout-large/sample_layout.xml       // layout for large screen size
res/layout-xlarge/sample_layout.xml      // layout for extra large screen size

你也可以使用

res/layout-land/sample_layout.xml适用于所有屏幕尺寸的横向,或者您可以将特定屏幕尺寸的横向布局定位为res/layout-medium-land/sample_layout.xml

请注意,所有布局都具有相同的名称。

准备好布局后,还需要注意图像分辨率

再次在您的 res/ 文件夹中添加如下图像:

res/drawable-ldpi/sample_image.png         // low density
res/drawable-mdpi/sample_image.png         // medium density
res/drawable-hdpi/sample_image.png         // high density
res/drawable-xhdpi/sample_image.png        // extra high density

再一次,所有图像都具有相同的名称。

设计图像的一般准则是:

ldpi is 0.75x dimensions of mdpi
hdpi is 1.5x dimensions of mdpi
xhdpi is 2x dimensinons of mdpi

通常,我为 320x480 屏幕设计 mdpi 图像,然后按照上述规则将尺寸相乘以获得其他分辨率的图像。

Android 将根据设备自动选择布局和图像的最佳组合。例如,对于高分辨率中等尺寸设备,将向用户显示布局中等和高密度的图像。

确保为所有这些组合创建模拟器并彻底测试您的应用程序。这是官方文档以获取更多信息:

https://developer.android.com/guide/practices/screens_support.html

于 2012-10-07T10:27:19.973 回答
0

m/h/xh dpi 是最重要的。将其与(最常见的)解决方案结合起来,您的“90%”目标应该没问题。

于 2012-10-07T10:16:55.750 回答