8

抱歉,我早些时候知道有些人有同样的问题,但我遇到了同样的问题,并且没有从之前的问题中得到清晰的认识。

我发现 Android 对于开发人员来说处理多维度非常复杂。就像有从 ldpi 到 xxhdpi 和平板电脑的设备。

我观察到的图像有不同的文件夹结构,如 ldpi、mdpi、hdpi 和 xhdpi 以及平板电脑 sw-600dp(7inch) 和 sw720dp(10inch)。

现在的问题是有许多手机尺寸为 5 英寸,但分辨率不同,平板电脑的情况也是如此。所以我很困惑,我要求设计师为不同的手机和移动设备制作什么尺寸的图像,因为分辨率因设备而异。

我还检查了链接http://developer.android.com/training/basics/supporting-devices/screens.html 但不清楚。

我是安卓新手。请指导我如何解决这个问题。

4

3 回答 3

7

预先选择您的设备目标并坚持下去。查看当今市场上最高分辨率的流行设备(三星 Galaxy s4(1080p)、nexus 7(1080p)、nexus 10(2560×1600)等)。

以物理设备上可用的最大分辨率制作您的设计/图形。

有3种图像:

  1. 可以做成9patch(问问自己..这可以用xml做吗?如果只是简单的形状,就用xml重做)
  2. 可以在 xml 可绘制对象中重做(渐变、形状等)
  3. 只能缩放或裁剪(如照片)

使用 9patches 很麻烦,恕我直言,应该不惜一切代价避免。即使你制作了一个非常好的 9patch,你仍然需要将它缩放到你想要支持的每个可能的分辨率,这会增加 apk 的大小。使用 xml 文件,您不必关心这一点,并且当将来有人推出更大分辨率的设备时(他们会),您将向前兼容。

例子:

在我正在处理的应用程序中支持的所有分辨率(l,m,h,xhdpi)中的简单渐变对话框背景(xhdpi 中的 100x400 分辨率)为 20Kb。在 xml 中它将是 <1Kb。

但是,是的,如果您仍想使用 9patches,只需以您关心的最大分辨率 (xhdpi) 执行一次,然后使用调整大小工具来获取所有其他分辨率。它将为您创建正确的可绘制文件夹结构!

关于3号:

所以你有一些不能在 xml 中重新制作的图像,也不能被 9patched。即使您只有几(2-3)张全屏图像(背景),您也会耗尽内存。有一些工具可以帮助解决这个问题,比如通用图像加载器。当然,如果你只有小图像,你可能是安全的。

在 Eclipse 中,布局编辑器有一个不错的预览功能,正确设置它以便您始终可以看到您关心的所有分辨率和纵横比。

总而言之,告诉您的设计师仅以当今市场上设备(属于该类别)具有的最大可用分辨率为手机、7 英寸平板电脑、10 英寸平板电脑进行不同的设计。另外,请学习如何使用 xml drawables。

于 2013-09-20T07:29:18.873 回答
2

一般来说,为了让设计完美,告诉你的设计师使用 .9.png,意思是 9 个补丁图像。9个补丁图像可以根据您的要求进行拉伸。

另一种方法是,您的设计师需要计算屏幕尺寸的绝对值。这意味着根据 Android 给我们的标准尺寸,我们有 4 种标准尺寸,即 320X426、320X470、480X720、720X960。因此,如果您需要创建图像设计师需要计算所需图像的屏幕尺寸。

即如果屏幕宽度为ldpi-320,那么将分配多少空间给特定的图像大小,所以他会在计算后找到4个不同大小的图像。

于 2013-09-20T06:29:30.777 回答
1

必须在真实设备上验证您的布局和特定于屏幕/密度的资源的行为是否符合您的预期。验证您的应用在具有您不支持尺寸/密度特定资源的屏幕的设备上的行为也很重要,并验证您的应用在 Android 默认设置下的外观和行为是否可接受。如果您将图像尺寸设置为以下顺序,图像看起来会更好。

ldpi = 120px
mdpi = 160px
hdpi = 240px
xhdpi = 320px
xxhdpi = 440px
xxxhdpi = 560px
于 2014-01-06T10:00:18.723 回答