【问题标题】:Resolution support in Android 2.0Android 2.0 中的分辨率支持
【发布时间】:2010-12-14 22:20:12
【问题描述】:

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

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

【问题讨论】:

    标签: android resolution motorola


    【解决方案1】:

    您使用了哪些维度单位?

    使用 dpsp 的 AFAIK 应该可以确保您的安全。

    来自文档:

    dp 与密度无关的像素 - 基于 屏幕的物理密度。这些 单位是相对于 160 dpi 屏幕,所以一个 dp 是一个像素 160 dpi 屏幕。的比率 dp-to-pixel 会随着 屏幕密度,但不一定在 正比例。注意:编译器 接受“dip”和“dp”,不过 “dp”与“sp”更一致。

    sp 与比例无关的像素 - 这就像 dp 单位,但它也是 按用户的字体大小缩放 偏爱。建议您使用 这个单位在指定字体大小时, 因此它们将针对两者进行调整 屏幕密度和用户偏好。

    【讨论】:

    • 谢谢你,Marcin,我不知道。将尽快阅读有关它的信息!问候
    • 如果文档没有说得很清楚:使用 sp 表示字体大小,使用 dp 表示非字体的大小,如填充、边距和尺寸。
    【解决方案2】:

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

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

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

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-04-07
        • 2011-04-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多