预先选择您的设备目标并坚持下去。查看当今市场上最高分辨率的流行设备(三星 Galaxy s4(1080p)、nexus 7(1080p)、nexus 10(2560×1600)等)。
以物理设备上可用的最大分辨率制作您的设计/图形。
有3种图像:
- 可以做成9patch(问问自己..这可以用xml做吗?如果只是简单的形状,就用xml重做)
- 可以在 xml 可绘制对象中重做(渐变、形状等)
- 只能缩放或裁剪(如照片)
使用 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。