【问题标题】:Android: Milestone and Galaxy have same resolution / dpi qualifiers for drawable, how to differentiate?Android:Milestone 和 Galaxy 具有相同的可绘制分辨率/dpi 限定符,如何区分?
【发布时间】:2011-09-20 17:43:02
【问题描述】:

我正在开发一个应用程序,我正在摩托罗拉 Milestone 和 Galaxy Tab 10.1 上进行测试。我的问题是我试图通过在可绘制文件夹名称后附加限定符来正确缩放我的图标,并希望里程碑使用一组图标,而 Tab 使用另一组,但还没有找到唯一的组合定位任一手机。

即如果我将 drawable 文件夹设置为 drawable-hdpi,Milestone 和 Tab 都使用该文件夹中的图像。

【问题讨论】:

    标签: android drawable galaxy-tab milestone qualifiers


    【解决方案1】:

    试试屏幕尺寸修饰符。例如有两个可绘制目录:

    drawable-normal
    drawable-xlarge
    

    请参阅documentation 中的表 2,了解您可以尝试的更多限定符。

    【讨论】:

    • 我试过了,但我认为 Galaxy 10.1 在 v3.0 之前的 Android 系统上被归类为大型系统。我正在尝试创建一个可以正确扩展到标签或手机的应用程序。
    • 我认为 Galaxy Tab 10.1 没有比 Android 3.0 更早的版本。据我所知,只有最初的 7 英寸 Galaxy Tab 具有 pre-Honeycomb (2.2)。如果 drawable-xlarge 不起作用,您可以尝试 drawable-large
    • 是的,你是对的,对不起。阅读所有这些限定符/分辨率/特定于操作系统的内容时,我一直感到困惑。好的,我已经尝试过了,看起来它正在工作,非常感谢。我将应用程序的目标(在 Eclipse 属性中)更改为 3.0,因此它会读取我的 android 清单文件中的 xlarge 屏幕,但它仍然在里程碑上运行。
    【解决方案2】:

    drawable-hdpi 将针对里程碑 (DPI = 240)

    drawable-mdpi 将针对 Galaxy Tab 10.1 (DPI = 149)

    您误认为 Tab 和 Milestone 在同一个 DPI 存储桶中。

    有关如何使用 res 文件夹处理平板电脑和手机的更多信息,请参阅this android developers blog post.

    【讨论】:

    • 有趣,似乎确实如此。不知道为什么我认为不是!但唉,我仍然需要找到一种更好的方法来通过我的可绘制文件夹的限定符来识别分辨率......
    • 为什么需要更好的方法来通过限定符来识别分辨率?
    • 好吧,基本上,我将字母表中的字母水平排列,A-M,横跨屏幕顶部(横向)。就目前而言,它在 atm 上运行良好,是在我的 drawable-hdpi 文件夹中,我的图标是 50x60。这些都显示在里程碑上。在 drawable-mdpi 文件夹中,图标为 70x90,并在 Galaxy Tab 上正确显示。我关心的是当应用程序在 mdpi 手机上提供时会发生什么?还是 hdpi 选项卡?
    • 你是对的;通过在您的 mdpi 文件夹中有较大的图像,您将在 mdpi 手机上造成问题。在这种情况下,使用@Joel F 将平板电脑图像放入 drawable-xlarge 文件夹的解决方案可能是明智的。我建议阅读android-developers.blogspot.com/2011/09/…
    • 谢谢!我刚看到那篇文章。我目前正在使用这种方法,到目前为止效果很好。呸。感谢您的帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    • 1970-01-01
    • 2012-11-29
    相关资源
    最近更新 更多