【问题标题】:Android: Handling screens that are the same dpi level but differentAndroid:处理相同dpi级别但不同的屏幕
【发布时间】:2012-04-07 14:15:12
【问题描述】:

我已经阅读了所有关于处理多种屏幕尺寸的 Android 文档,但我仍然无法找到这个问题的答案或如何处理这个问题。

如果有两部手机具有相同的 dpi 级别(例如都是 hdpi),我可以为它们提供一个资源并设置布局参数:

<ImageView
android:id="@+id/icon"
android:layout_width="94dp"
android:layout_height="94dp"
>

此实例中的“图标”足够大,因此在所有情况下它都会缩小以适应该布局。在理想情况下,我会假设图标在所有 hdpi 设备上的显示尺寸完全相同,但是当我在 LG G2x 和 HTC Sensation 上进行测试时,Sensation 上的图像会更小。那么在计算 hdpi 图像的大小时,Android 是否总是只使用 1.5 倍的因子?我能做些什么来保证所有 hdpi 设备上的大小完全相同吗?谢谢。

【问题讨论】:

  • 你现在针对这个问题提出什么解决方案?

标签: android image resolution dpi hdpi


【解决方案1】:

您可以使用它来帮助您完成项目

http://developer.android.com/training/multiscreen/screensizes.html

【讨论】:

  • 我已经读过了。问题是具有设置 dpi 的图像是否真的在所有设备上都具有相同的大小
【解决方案2】:

答案是系统确实为每个 dpi 级别使用标准乘数(例如 hdpi 为 1.5x)。为了解决这个问题,我只使用了 DisplayMetrics 的 .xdpi 和 .ydpi 值,并根据这些实际值进行计算。

【讨论】:

    【解决方案3】:

    通常,当我们想要这样做时,我们通常会使用 wrap_content。所以一旦尝试 layout_width = "wrap_content",layout_height = "wrap_content"。这样 ANdroid SDK 的样子。

    【讨论】:

    • 这并不总是一个选项,就像我的情况一样,因为图标之间需要有一定的空间。 Wrap_content 仅在我还可以使用居中等时才有用。我仍然需要在图标之间留出空间。还有其他帮助吗??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-18
    • 1970-01-01
    • 1970-01-01
    • 2015-06-29
    • 2013-02-06
    • 1970-01-01
    相关资源
    最近更新 更多