【问题标题】:Android - Using large images in an ImageView or different sized imagesAndroid - 在 ImageView 中使用大图像或不同大小的图像
【发布时间】:2012-10-18 19:10:38
【问题描述】:

我有一个在 Android 上运行良好的“仪表板”菜单。它有 8 个 ImageView,可以根据我的需要工作。

-------------------
|        |        |
|    1   |    2   |
-------------------
-------------------
|        |        |
|   3    |    4   |
-------------------
-------------------
|        |        |
|    5   |    6   |
-------------------
-------------------
|        |        |
|    7   |    8   |
-------------------

我使用了 8 张不同的图像,分辨率非常高,这样它们在任何地方都看起来不错。我没有将它们中的任何一个包含在不同的 dpi 文件夹中。我只有一个大分辨率,所有屏幕尺寸都可以接受。这是不好的做法吗?我真的应该为每个人提供不同尺寸的图片吗?

【问题讨论】:

    标签: java android xml android-imageview


    【解决方案1】:

    这是不好的做法吗?

    如果它在所有屏幕密度(以及您支持的尺寸)下看起来都不错,那就太好了。只有你才能做出这样的决定。

    正如我在 another answer 中指出的那样,问题在于自动重采样以及由此产生的质量。

    首先,屏幕密度不断增加。我们现在有-xxhdpi 设备(例如,Droid DNA)。但是,-xxhdpi 是相对较新的 SDK 新增功能。如果您的图标是-xhdpi,它们将被上采样为-xxhdpi,这可能会有问题。不过,目前-xxhdpi 设备的数量非常少,所以这暂时可能无关紧要。但是,如果您仅提供 -mdpi 图像,Android 将需要对 -hdpi 进行上采样,这可能再次导致伪影。

    与上采样相比,下采样更有可能获得不错的结果。但是,这并不是质量的绝对保证,尤其是当您经历多个级别时(例如,将-xhdpi 下采样到-ldpi)。

    为其他密度定制图像让您可以绝对控制质量,但代价是开发时间和 APK 大小。

    【讨论】:

    • 完美。这正是我想知道的。 Nexus 10 是 xxhdpi 吗?我已经将我的一些示例应用程序加载到我的 Nexus 10 上,它们看起来不错(应用程序看起来与我的三星银河选项卡上的完全一样)。我认为在极高的 ppi 下会有一些开箱即用的问题。有关于此的任何快速说明?
    • @EGHDK:“Nexus 10 是 xxhdpi 吗?” -- 不,除了用于启动器图标,出于某种愚蠢的原因。
    • 什么?所以从技术上讲,我的 Nexus 10 上的启动器图标正在被上采样?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-17
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    • 1970-01-01
    • 2011-07-18
    相关资源
    最近更新 更多