5

我在 android 开发中遇到了一个让我厌烦的问题。我的问题是屏幕尺寸和处理。特别是我对图像有一些问题。例如,我想为我在 Photoshop 中创建的活动创建一个背景图像,并且我的背景图像上包含一个“HELLO”字样。但是当我把它放在drawable-xhdpi文件夹上时,它看起来很模糊而且不清晰!!我的手机是 nexus 4,根据 Google 文档,我创建了 640 x 480 大小的背景图像。

当我创建 960 x 720 尺寸的背景图像时,它看起来更好但并不完美。在这种情况下,我的图像文件大小非常高!

但是这个的标准方法是什么?请帮助我永远解决这个问题。我阅读了谷歌文档,但它没有解决我的问题! http://developer.android.com/guide/practices/screens_support.html

4

4 回答 4

5

您通常应该避免为某些屏幕尺寸创建图像以使其成为背景,因为有成千上万种不同的设备,您必须创建数十个这样的图像。

您需要注意的第一件事是屏幕密度。

通常,即使不看屏幕尺寸,您也会创建 3 到 5 张图像:低 (120 dpi)、中 (160 dpi)、高 (240 dpi)、超高 (320 dpi) 和 2*超高 (480 dpi)。这些进入 drawable-Xdpi 文件夹,其中 X 是 l、m、h、xh、xxh 之一。

接下来,当您想在更大的屏幕(更大的手机、小型和大型平板电脑)上拥有更大的图像时,您可能希望将图像放入诸如 drawable-sw600dp-Xdpi 之类的文件夹中。这不适用于您的手机。

Nexus 4是 xhdpi 640x384 dp 设备,但您不应将其与三星 Galaxy S2 (hdpi 533x320 dp) 区别对待。

为两部手机创建一个较小尺寸的图像并将其水平居中。例如,mdpi 为 320x100 像素,hdpi 为 480x150 像素,xhdpi(您的手机)为 640x200 像素。

于 2013-06-23T14:14:05.483 回答
5

使用 1600 多个 android 模型,即使它们被归类为几个屏幕尺寸和几个 DPI,它非常难以管理布局.. 我建议你只专注于设计适合屏幕大小的布局,然后将视图创建为可调整大小的视图以忽略密度效应.

创建布局后调整视图大小..您可以创建自定义视图或调整其 onMeasure();

于 2013-06-23T14:41:56.233 回答
1

Nexus 的屏幕分辨率为 1280x768 ( http://www.google.com/nexus/4/specs/ ),将图像调整为此分辨率。特别考虑到某些图像无法处理分辨率并且图像变得不成比例。

有趣的分辨率计算器: http: //members.ping.de/~sven/dpi.html

于 2013-06-23T14:04:42.817 回答
1

这是 Android Fragmentation 的问题,您无法完美地处理它,因为有数百种不同的设备。正如上面的同事所写,Nexus 4 的分辨率为 -1280 x 768,因此肯定图像分辨率等于 960 x 720 是不错的选择。我什至很惊讶谷歌建议 xhdpi 使用 640 x 480,它肯定太少了。

因此,正如我所说,您无法为所有现有设备制作完美的图形。您应该从每个屏幕类别(xhdpi、mdpi、ldpi ... 等)中选择最流行的设备,以覆盖最重要的市场份额。

于 2013-06-23T14:14:20.123 回答