1

我有一个客户端,它给了我一个 .psd 文件,其中包含一个Activity带有所有图形的整个屏幕。分辨率为 480x800。客户希望应用程序看起来与 .psd 文件中的应用程序相同。问题是不同的设备具有不同的分辨率和尺寸。我知道密度才是真正重要的,但我怎样才能缩放图形以在所有设备上看起来都一样?例如,我导出了所有图层并在 Android 中重新创建了屏幕,但由于某种原因,屏幕在 Nexus One (480x800) 上看起来更加拥挤。

一个想法是从图形创建 9 个补丁图像并用于ImageViews android:background 而不是 android:src 对吗?

图形分辨率为 320x480 不是更好吗?还是我需要两种分辨率?另外,我必须考虑状态栏的高度,我理解它是 25dip,但我对此不确定。

因此,总而言之,我有兴趣找出客户提供模型和图形的最佳方式,以便开发人员根据规范轻松实施。

4

1 回答 1

0

这是不容易解决的问题。想想一个网页设计师,一个人不可能知道每个浏览器的所有可能的分辨率和设置,所以他必须相应地缩放。

在我看来,这里只有三种方法。

首先:让他说明他想支持哪些设备,并且只支持那些设备。提取具有最高分辨率的设备大小的层,并在其他设备上按比例缩小它们。例如,如果您必须支持两个具有 480x800(2) 和 240x300(1) 的设备,请将所有图像导出为 480x800 并相应地缩小它们。不要为每个设备编写一个应用程序。

第二:以可能的最高分辨率导出图形,并在所有设备上相对于正在使用的设备按比例缩小它们。再次想象一下,一个网页设计师。他所做的只是定义边距、填充等,它在几乎任何浏览器中都会看起来不错。您应该做同样的事情并根据需要调整元素的大小。

第三:使应用程序固定,例如为您的整个应用程序定义一个 200x200 的大小,然后用某种颜色(例如黑色)填充大于屏幕的所有内容。这在 java ME 应用程序中经常发生,它们在为它们设计的硬件上看起来很棒,并且仍然可以在超出他们的时间的硬件上播放,尽管它​​们看起来很丑。

希望这会有所帮助,罗宾。

于 2010-08-25T09:04:46.470 回答