3

收到了我的第一个摩托罗拉 Droid 用户的电子邮件。Android 2.0 中引入的新的 480x854 分辨率(而不是 320x480)对我的用户界面造成了严重破坏。一切都变小了,而且位置不佳。

我的印象是,如果我们遵循 XML 布局指南,我们的分辨率是安全的,因为没有使用绝对坐标。有没有人有使 UI 分辨率安全的经验?我们需要每个分辨率和每个方向的 main.xml 吗?

4

3 回答 3

8

您使用了哪些尺寸单位?

AFAIK 使用dp并且sp应该保证您的安全。

从文档:

dp Density-independent Pixels - 一个基于屏幕物理密度的抽象单位。这些单位与 160 dpi 屏幕相关,因此 1 dp 是 160 dpi 屏幕上的一个像素。dp与像素的比例会随着屏幕密度而变化,但不一定成正比。注意:编译器同时接受“dip”和“dp”,尽管“dp”与“sp”更一致。

sp 与比例无关的像素 - 这类似于 dp 单位,但它也根据用户的字体大小偏好进行缩放。建议您在指定字体大小时使用此单位,以便根据屏幕密度和用户偏好进行调整。

于 2009-11-10T07:59:48.533 回答
5

eclair 模拟器为这些问题创造了奇迹,还请务必阅读:

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

您的应用程序会根据许多因素(甚至是 min-sdk)响应不同的分辨率。此外,该页面还提供了一些最佳实践:

  1. 首选 wrap_content、fill_parent 和 dip 单位而不是 XML 布局文件中的 px
  2. 避免绝对布局
  3. 不要在代码中使用硬编码的像素值
  4. 使用密度和/或分辨率特定资源
于 2009-11-10T17:26:40.197 回答
2

除了分辨率差异之外,另一个需要考虑的是,Droid 的 WVGA 屏幕与之前的设备(如 G1)具有不同的宽高比。在我下载的许多较旧的应用程序中,这表现为屏幕底部的间隙,或者在纵向模式下垂直未对齐的元素。您可能想尝试在具有 WVGA 外观的模拟器中运行您的应用程序,以检查您的布局对纵横比所做的任何隐藏假设。

于 2009-11-10T17:01:45.887 回答